循環單鏈表需要注意的小問題

一: 將指針指向表尾

        一般情況下,當我們創建一個單鏈表時,通常會將指針指向表頭。但當我們創建一個循環單鏈表而且需要對錶頭表尾頻繁操作時,我們是否還會爲它創建一個頭指針呢?下面小編來分析一下: 

        定義頭指針: 當我們查找表頭時,時間複雜度爲O(1),當我們查找表尾時,時間複雜度爲O(n);

        定義尾指針: 當我們查找表頭時,因爲尾指針和頭指針相連,我們只需查找尾指針的下一個節點,時間複雜度爲: O(1),當我們查找頭指針時,時間複雜度爲: O(1);

        很顯然,當我們需要對錶頭表尾頻繁操作時,定義尾指針會完虐定義頭指針。

二: 不要陷入死循環

        循環單鏈表沒有明顯的結束條件,當我們不注意時,很容易陷入死循環。此時,我們可以設置一個標記點作爲循環的標記,當我們知道表長,我們也可以設置一個計數器來結束循環。

發佈了11 篇原創文章 · 獲贊 8 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章