鍊錶與棧之間的鬼扯

2021-09-08 08:15:34 字數 672 閱讀 8230

1:定義——鍊錶,為什麼,用處和優勢

鍊錶任意位置進行插入和刪除,都只需要修改指標,而陣列中插入刪除節點,平均要移動一半的節點

(靜態)陣列從棧中?分配空間,對於程式設計師方便快速,但是自由度小。鍊錶從堆中?分配空間,自由度大但是申請管理比較麻煩。

2:如何實現——

1)鍊錶類,結點類(鍊錶類的內部類),在main()方法建立一條鍊錶類物件,通過方法逐步建立結點類,通過引用鏈結起來成為鍊錶。

2)結點類包含資料和對下個結點的引用,建構函式,方法。其中getdata()方法寫了半天,發現。。。呼叫就行。又一次。。。

3)鍊錶類的構造方法,只構造出不含資料的頭結點。(外部類可以直接對內部類的私有成員進行訪問,這樣就可以直接修改引用)

題:輸入乙個鍊錶,按煉錶值從尾到頭的順序返回乙個arraylist。

鍊錶已知,listnode;

問題:1.如何遍歷鍊錶?鍊錶遍歷與棧之間怎麼個關係?怎麼知道是當前節點還是頭結點?

——鍊錶類中含變數結點個數和頭結點;結點內部類中含變數結點資料和結點指向;

鍊錶中沒有寫明頭結點時怎麼決定呢?

2.如何才能保證返回arraylist?需要遍歷完存到arraylist中嗎?

——是的,建立2個arraylist

佇列 棧與鍊錶

佇列,顧名思義,就像排隊一樣,我們只能在隊首刪除,在隊尾增加。佇列是一種先進先出 fifo 的資料結構。參考 佇列的解析與c語言實現 棧,可以理解為乙個儲物的地方,且只有乙個出口,先放進去的東西最後才能拿出來 因為被後面放進去的東西擋住了 棧作為一種 資料結構 是一種 只能在一端進行插入和刪除操作 ...

佇列 棧與鍊錶

一 佇列 佇列,顧名思義,就像排隊一樣,我們只能在隊首刪除,在隊尾增加。佇列是一種先進先出 fifo 的資料結構。參考 佇列的解析與c語言實現三 鍊錶 鍊錶是一種物理儲存單元上非連續 非順序的儲存結構,資料元素的邏輯順序是通過鍊錶中的指標鏈結次序實現的。鍊錶由一系列結點 鍊錶中每乙個元素稱為結點 組...

20201130 棧與鍊錶

經過這短短乙個月,真的感受到自己的無知與懦弱,比如沒有確定的事情,就敢跟小可愛承諾,自己的不成熟導致了這一兩年的倒退,這乙個月暫時就不實習了,好好把知識補一補,然後將python好好學一下,簡單會sql是沒有未來的,不管在哪個企業,都是以營利為目的,小可愛這麼拼,每天5點多就開始上班,你心裡難道一點...