當前位置:趣味科普網>經驗>

python陣列和連結串列的區別

經驗 閱讀(1.05W)

python陣列和連結串列的區別

陣列是具有相同的資料型別且按一定次序排列的一組變數的集合體,構成一個數組的這些變數稱為陣列元素

陣列在記憶體中的地址是連續相鄰的,而連結串列在記憶體的地址是雜湊的,不連續的

陣列是將元素在記憶體中連續存放,由於每個元素佔用記憶體相同,可以通過下標迅速訪問陣列中任何元素。但是如果要在陣列中增加一個元素,需要移動大量元素,在記憶體中空出一個元素的空間,然後將要增加的元素放在其中。同樣的道理,如果想刪除一個元素,同樣需要移動大量元素去填掉被移動的元素。如果應用需要快速訪問資料,很少或不插入和刪除元素,就應該用陣列。

連結串列恰好相反,連結串列中的元素在記憶體中不是順序儲存的,而是通過存在元素中的指標聯絡到一起。比如:上一個元素有個指標指到下一個元素,以此類推,直到最後一個元素。如果要訪問連結串列中一個元素,需要從第一個元素開始,一直找到需要的元素位置。但是增加和刪除一個元素對於連結串列資料結構就非常簡單了,只要修改元素中的指標就可以了。如果應用需要經常插入和刪除元素你就需要用連結串列資料結構了。