C語言堆疊問題

若題目為: 使用一個while迴圈來搬移堆疊S1的內容到堆疊S2做完之後,堆疊S1應該是空的 則程式應該為: stack(Temp) while (NOT empty (S1)) { pop (S1, x) push (Temp, x) // Temp is a temporary stack } while (NOT empty (Temp)) { pop (Temp, x) push (S2, x) } 那如果題目變成為: 使用一個while迴圈來複製堆疊S1的內容到堆疊S2做完之後,堆疊S1和S2的內容應該相同 則程式應該為何? 我不知道要如何複製 可否寫出程式碼給我看並加上註解 謝謝!! show more 若題目為:
使用一個while迴圈來搬移堆疊S1的內容到堆疊S2做完之後,堆疊S1應該是...
則程式應該為:
stack(Temp)
while (NOT empty (S1))
{
pop (S1, x)
push (Temp, x) // Temp is a temporary stack
}
while (NOT empty (Temp))
{
pop (Temp, x)
push (S2, x)
}



那如果題目變成為:
使用一個while迴圈來複製堆疊S1的內容到堆疊S2做完之後,堆疊S1和S2...
則程式應該為何?
我不知道要如何複製
可否寫出程式碼給我看並加上註解
謝謝!!
3 answers 3