0

このシナリオをモデル化するのに役立つデータ構造を見つけようとしています...

2 つのタイプを持つ一連の式があります。 1. 実行する必要のある計算を含み、true または false の結果を返す式 2. 情報を出力し、戻り値を持たない式彼らの計算結果。

式はデータベースに保存され、実行時にデータ構造にロードされます。データ構造は、式の順序と、式の結果に応じて従うべき決定を保持する必要があります。

これを簡単な例で説明しましょう。ここでは、4 つの式があり、最初の 2 つは実行時に true または false の戻り値を持つルールですが、最後の 2 つは単なる情報であるため、実行後にフローは次の式に進みます。

Expression 1: "5+5=10" If True then go to Expression 2 If False then go to Expression 4 
Expression 2: "6+1=7" If True then go to Expression 4 If False then go to Expression 3
Expression 3: "print hello" 
Expression 4: "print goodbye"

私がすぐに考えたのは、データ構造は、次の式を指す next() メソッドだけでなく、適切なノードを指す true() および false() メソッドを持つ必要があるある種のリンクされたリストである可能性があるということです式に戻り値がある場合。

このタイプの関係をモデル化する確立された方法はありますか?

4

2 に答える 2

3

単純に二分木を使用できます。

于 2012-09-28T07:05:44.617 に答える
0

擬似コード:

LinkedList <Map <Integer><Decision>>

どこ:

Integer- 決定の数

Decision- あなたの機能

Logicたとえば、次のように構造を定義できます。

input  1 2 3 4 5 6
true   2 
false  4

1 ret trueif then ret 2else retを意味します4

于 2012-09-28T07:13:26.443 に答える