一.線性表:
(1).定義:是由同一型別的資料元素構成的有序序列的線性結構。
(2).儲存實現:順序儲存,鏈式儲存
順序儲存的優點:儲存密度大,由於用的是陣列不需要儲存位址。
順序儲存的缺點:對順序表插入刪除時需要移動資料元素來實現,影響執行效率
鏈式儲存的優點:對線性表的插入刪除不需要移動資料元素,只需要修改鏈。
鏈式結構的缺點:占用空間較大。
1.單鏈表
基本操作:1.插入節點。2.刪除節點。3.建立。4.遍歷。
1.插入節點
(1).在單項鍊表head的某個節點p之後插入一新節點的基本過程是:先找到正確的位置p,然後申請新節點t的節點資訊賦值,最後將t插入p之後。
即t->next=p->next; p->next=t; 注意:該語句不能顛倒;
如果需要在鍊錶的頭上插入乙個節點t,其基本語句是:t->next=head; head=t;
(2)刪除節點
首先找到被刪除節點的前面乙個節點p,然後刪除p之後的那個節點。
即t=p->next;
p->next=t->next;
free(t);
注意:刪除乙個節點後必須釋放該節點的空間;
如果刪除的是鍊錶的第乙個結點,其基本的語句是
t=head;
head=head->next;
free(t);
(3)遍歷
p=head;
while(p!=null)
(4)建立
1.在鍊錶的頭上不斷插入新結點 t->next=head; head=t;
2.在尾部插入 tail->next=t; tail=t;
資料結構線性表C語言實現
include include define true 1 define false 0 define ok 1 define error 0 define infeasible 1 define overflow 2 define initsize 100 typedef int status t...
簡述 資料結構 線性表 c語言實現
second60 20180422 線性表是具有相同特性的資料元素的乙個有限序列。adt list 資料物件 d 資料關係 r 基本運算 initlist l 初始化線性表 destroylist l 銷毀線性表 listempty l 線性表是為空 listlength l 線性表的長度 disp...
資料結構 線性表的C語言實現
1.什麼是線性表?2.線性表的抽象資料型別 3.線性表之順序表的c語言實現 include include define elementtype int define maxsize 5 1.定義結點和指標 typedef struct lnode list struct lnode struct ...