python的鏈表與數組對比,優勢和劣勢

1、python中的鏈表如何實現

class Node(object):
    def __init__(self, data, next):
        self.data = data
        self.next = next

if __name__ == '__main__':
    head = None
    for n in range(1,6):
        head = Node(n, head)

    while head != None:
        print(head.data)
        head = head.next

Python程序員使用對象引用建立起節點和鏈表結構。

上面的程序定義了一個節點,並且利用循環生成一個鏈表並訪問列表。

生成的鏈表是這樣的:

大家都知道,使用鏈表的好處,程序向內存申請內存時不要求內存是連續的,這與數組對內存空間在物理上必須連續是不一樣的。鏈表結構的另一個好處是爲刪除和插入節點帶來了好處,不需要移動大量的節點,只需要修改節點“指針”。java和Python中是沒有指針一說的,都是通過引用實現的,C和C++中有指針的概念。

單鏈表結構相對於數組的主要優點不在於時間性能,而在於內存性能。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章