→ kai5566:謝謝你^^ 03/04 22:12
push( S, x ) : 將x push入 stack S
pop( S, x ) : 將stack S 之top元素取出且放入變數x
(以下multi-set中最右邊表示top元素)
1.
clearstack(S) :
S = 空集合 x=1 y=2 z=3
push( S, x ) :
S = {1} x=1 y=2 z=3
push( S, 4 ) :
S = {1,4} x=1 y=2 z=3
pop( S, z ) :
S = {1} x=1 y=2 z=4
push( S, y ) :
S = {1,2} x=1 y=2 z=4
push( S, 3 ) :
S = {1,2,3} x=1 y=2 z=4
push( S, z ) :
S = {1,2,3,4} x=1 y=2 z=4
pop( S, x ) :
S = {1,2,3} x=4 y=2 z=4
push( S, 4 ) :
S = {1,2,3,4} x=4 y=2 z=4
push( S, x ) :
S = {1,2,3,4,4} x=4 y=2 z=4
while loop :
輸出 4 4 3 2 1
嗯....跟原po答案相同!
2.
clearStack(S) :
S = 空集合 x=nil y=1
push( S, 5 ) :
S = {5} x=nil y=1
push( S, 7 ) :
S = {5,7} x=nil y=1
pop( S, x ) :
S = {5} x=7 y=1
x = x + y :
S = {5} x=8 y=1
pop( S, x ) :
S = 空集合 x=5 y=1
push( S, x ) :
S = {5} x=5 y=1
push( S, y ) :
S = {5,1} x=5 y=1
push( S, 2 ) :
S = {5,1,2} x=5 y=1
pop( S, y ) :
S = {5,1} x=5 y=2
pop( S, x ) :
S = {5} x=1 y=2
while loop :
pop( S, y ):
S = 空集合 x=1 y=5
輸出 5
最後輸出 :
x = 1 y = 5
也跟原po一樣!
希望有幫上您的忙!
※ 引述《kai5566 (中肯˙專業凱56)》之銘言:
: 題目連結:
: http://img713.imageshack.us/i/poph.jpg/
: 請問pop中給2個參數
: 如: pop(S, z);
: 是什麼意思呢???
: 是指把stack 中最上面的值pop給變數z嗎
: 如果是這樣 大家這兩題算多少呢?
: 我算的答案
: 1.印出X=4 4 3 2 1
: 因為後面說如果堆疊不是空的 就一直pop給X
: 2.印出
: 先印一次5
: X=1
: Y=5
: 這樣正確嗎????
: 因為目前我還不敢確定pop(S,x) 的意思是不是我想的這樣
: 拜託各位高手了~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.127.3.252