單鏈表操作之遍歷


幾乎數組上所有的操作都是基於索引的,而索引是數組結構一個不可或缺的部分。在鏈表結構上,必須通過操作結構在的鏈接來模擬基於索引的操作。

訪問鏈表的每一個節點,而不刪除它們,這種操作叫做遍歷。

它使用的是臨時的指針變量,這個變量先初始化鏈表結構的head指針,然后控制一個循環,如下:

# coding: utf-8
class Node(object):
    def __init__(self, data, next=None):
        self.data = data
        self.next = next


head = None

for count in range(1,6):
    head = Node(count, head)
    print head.data, head.next,head


probe = head
while probe != None:
    probe = probe.next
    print probe
print head

 在上述代碼結束的時候,probe指針是None,但是head指針仍然引用第一個節點。

通常遍歷一個單鏈表結構會訪問每一個節點,但是當遇到一個空鏈接的時候終止。因此,值None充當負責停止這個過程的哨兵。

遍歷在時間上是線性的,並且不需要額外的內存。

結束!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM