2011-05-07 60 views
0

我遇到了下推堆棧的問題!我有一個最大大小爲10的數組。我允許用戶通過push將數字輸入到堆棧中,並使用pop將其刪除。根據數組中有多少個數字,我必須遍歷堆棧,堆棧的長度不一定總是10。假設堆棧中有5個數字(數組的大小爲10)。我需要通過元素5遍歷元素,因爲過去的所有內容都不是數字。我怎樣才能做到這一點?迭代通過一個未知大小的數組C++

+0

難道你不保留堆棧頂?這是你的上限,而不是10. – atoMerz 2011-05-07 17:53:28

+1

這是功課嗎?如果是,它應該被標記爲如此。 '未知'標籤根本沒有幫助。人們會問問題,因爲他們不知道*。有點多餘,不是嗎? – karlphillip 2011-05-07 17:57:07

回答

2

使用std :: vector作爲堆棧的底層存儲,並使用迭代器begin(),end()來獲取向量中有效元素的範圍。

4

爲什麼不跟蹤C++類中堆棧中有多少元素?當有人呼叫推送時,增加計數,並且當有人呼叫流行音時,減少計數。

+0

dsolimano謝謝你!爲什麼我不這麼想:( – ASCII 2011-05-07 18:13:28

+0

@ASCII,第一次看到它後總是比較容易,如果答案解決了你的問題,你應該用投票箭頭點擊複選標記。 – dsolimano 2011-05-07 19:44:22