2009-11-10 58 views

回答

1

這將取決於執行。

推送通常不會返回任何內容,因爲它會將您提供給堆棧的項目添加進去。相應的Pop操作將從堆棧頂部移除項目並將其返回。

0

我認爲這完全取決於堆棧的實現。某些實現可能返回任何結果,別人一個布爾值,其他的還是棧對象本身鏈接:

stack.push(element1).push(element2); 
1

它不應該返回任何東西。例如,在.Net中,它定義爲as a void function

+0

它在Java中返回什麼? – 2009-11-10 09:09:46

+0

它返回剛剛推送的對象:http://java.sun.com/j2se/1.4.2/docs/api/java/util/Stack.html#push%28java.lang.Object%29 – 2009-11-10 09:23:09

0

我同意這裏的其他人的返回值是無效的。然而,你的實現可能包含一個計數器來跟蹤元素被添加到Stack的特定對象的次數。那些貪婪代碼優化的人可能會感興趣。它可以幫助評估當前的堆棧實現並優化初始大小分配(如果它是基於陣列的),根據原始系統中開發的模塊在一段時間內的發展情況來提高性能。