講師回答 / Peter
因為堆棧是通過雙向鏈表實現的,所以雙向鏈表的方法堆棧都有。但是,從堆棧的數據結構來看,最好遵循push和pop的規則。用shift可以,但是用了之后就不是純粹的堆棧了。因為,堆棧就是先進后出的。
2014-08-26
講師回答 / Peter
首先,鏈表可以被認為是一種比較特殊的有向圖,所以這個同學的第一個觀點是正確的。但是,雙向鏈表頭尾指針的概念是肯定存在的。另外,我們學習數據結構的目的是學以致用,如果只是為了學習概念而學習概念,那就有點學究氣息了。在我看來,不必這么糾結,取其精華而用之就可以了。另外,在SPL中,雙向鏈表的數據結構其實被用于了堆棧和隊列的設計,而且,雙向鏈表類也可以被當做單向鏈表用。而后面這三個數據結構都是有首尾指針的,因此,也不可能直接在雙向鏈表里面屏蔽這兩個指針,這樣會破壞這些類的一致性的??傊?,我課程里面對于雙向鏈表的...
2014-08-17