單向鍊錶練習

2021-10-09 05:58:50 字數 1366 閱讀 8912

- 分析:當鍊表的頭節點是無效資料時:

頭節點的next指標指向null,則表明此煉表無有效值

頭節點的next指標指向不為null時,則對鍊錶進行遍歷,統計其有效資料個數

/**

* 獲取鍊錶長度

* @return

*/public

intgetvalidlength()

heronode temp = head.next;

while

(temp != null)

return length;

}

分析:獲取鍊錶長度,鍊錶長度減去k則可得到倒數第k個節點的資料
/**

* 查詢單鏈表中的倒數第k個節點

* 單鏈表的反轉

*/public heronode reverselinkedlist()

heronode newhead =

newheronode(0

,"",""

);heronode cur = head.next;

heronode temp = null;

while

(cur != null)

head.next = newhead.next;

return head;

}

分析:1 通過單鏈表的反轉可以實現逆序列印單鏈表

2.可以通過棧來完成操作。

/**

* 通過棧實現單鏈表的逆序列印

*/public

void

reverseprint()

stack stack =

newstack()

; heronode temp = head.next;

while

(temp!=null)

while

(!stack.

empty()

)}

單向鍊錶的練習

單向鍊錶的頭插法和尾插法 include include include 單項鍊表的練習 頭插法和尾插法 設計節點 typedef struct node node,node 設計空鍊錶,頭節點 申請空間,並給頭指標域賦值為空 node init void return head 新節點 node ...

鍊錶 反轉單向鍊錶

思路 從第二個元素開始。1 刪除當前元素。2 把當前元素放到頭結點位置。其中需要宣告3個變數 headnode 頭結點 prenode 前乙個結點 currentnode 當前結點 具體步驟如圖所示 實現 反轉單鏈表方法實現類 created by liujinjin on 17 1 19.publ...

鍊錶1 單向鍊錶

鍊錶中最簡單的一種是單向鍊錶,它包含兩個域,乙個資料域和乙個指標域,指標域指向鍊錶中的下乙個節點,最後乙個節點的指標域指向乙個空值 鍊錶最基本的結構是在每個節點儲存資料和到下乙個節點的位址,在最後乙個節點儲存乙個特殊的結束標記,另外在乙個固定的位置儲存指向第乙個節點的指標,有的時候也會同時儲存指向最...