0

Rascal には Stack のサポートが組み込まれていることは確かですが (たとえば、スタックのプッシュ/ポップによる式の評価)、何も見つかりません。

なので今はこれを使っています。しかし、より良い方法はありますか?

list stack = [];

ポップ:

value = stack[size(stack)-1];
stack = stack - value;

押す

stack = stack + value
4

2 に答える 2

0

Have a look at the documentation of the List module: lists support a whole zoo of stack-related functions: push, pop, top, dup, etc.

于 2014-12-05T12:05:15.070 に答える
0

pop を次のように変更することをお勧めします。

value = stack[-1]; //short hand notation
stack = delete(stack, size(stack)-1); // to make sure the last item is deleted (in case duplicates exist in the list)
于 2014-12-05T11:52:28.387 に答える