一、順序表
1.順序表是基於一維數組實現的
2.順序表的長度(length)應該比數組長度(maxsize)小
3.順序表的插入、刪除、查找
(1.)插入
在表中第i個位置插入一個新的元素x,表的長度加1,最後的元素像後移。知道把第i個位置空出來,把新元素插入進去。如圖所示
(2.)刪除
在表中第i個位置刪除一個元素x,表的長度減1。如圖所示
(3.)查找
順序表中第i個元素存在第i-1的位置上,實現按位查找,時間複雜度爲O(1)
二、鏈表
1.鏈表存儲是有一個數據域data、一個指針域 next ,一個數據域加上一個指針域稱作爲一個節點,指針域指向下一個節點
2.p->data 表示當前元素的數據域 p->next 表示指向下一個節點
3.鏈表的插入、刪除、查找
(1.)插入
如果想要在第i個位置插入數據,s->next=p->next;p->next=s;
(2.)刪除
如果想要刪除i位置的元素,q=p->next;x=q->data;p->next=q->next;
(3.)查找
及時知道想訪問的節點,也不能直接查找,也需要一個指針域查找下一個節點,一個個查找
三、鏈表與順序表區別
1.針對於刪除、插入,還是鏈表時間複雜度低
2.查找的話,還是順序表比較快,時間複雜度低
四、以上如有錯誤,歡迎隨時交流,期待共同進步