當前位置:趣味科普網>數碼>數碼極客>

順序表和連結串列的區別

數碼極客 閱讀(2.54W)

順序表和連結串列的區別

演示機型:華為MateBook X系統版本:win10

1、儲存分配方式不同:順序儲存結構是用一段連續的儲存單元依次儲存線性表的資料元素,單項鍊表是採用鏈式儲存結構,用一組任意的儲存單元存放線性表的元素。

2、空間利用率不同:順序表的空間利用率顯然要比連結串列高。因連結串列在儲存資料時,每次只申請一個節點的空間,且空間的位置是隨機的,這種申請儲存空間的方式會產生很多空間碎片,一定程式上造成了空間浪費。不僅如此,由於連結串列中每個資料元素都必須攜帶至少一個指標,因此連結串列對所申請空間的利用率也沒有順序表高。

3、開闢空間的方式不同:順序表儲存資料實行的是 “一次開闢,永久使用”,即儲存資料之前先開闢好足夠的儲存空間,空間一旦開闢後期無法改變大小(使用動態陣列的情況除外)。而連結串列則不同,連結串列儲存資料時一次只開闢儲存一個節點的物理空間,如果後期需要還可以再申請。因此,若只從開闢空間方式的角度去考慮,當儲存資料的個數無法提前確定,又或是物理空間使用緊張以致無法一次性申請到足夠大小的空間時,使用連結串列更有助於問題的解決。