鍊錶是一種常見的基礎資料結構,結構體指標在這裡得到了充分的利用。鍊錶可以動態的進行儲存分配,也就是說,鍊錶是乙個功能極為強大的陣列,他可以在節點中定義多種資料型別,還可以根據需要隨意增添,刪除,插入節點。鍊錶都有乙個頭指標,一般以head來表示,存放的是乙個位址。鍊錶中的節點分為兩類,頭結點和一般節點,頭結點是沒有資料域的。鍊錶中每個節點都分為兩部分,乙個資料域,乙個是指標域。說到這裡你應該就明白了,鍊錶就如同車鏈子一樣,head指向第乙個元素:第乙個元素又指向第二個元素;……,直到最後乙個元素,該元素不再指向其它元素,它稱為「表尾」,它的位址部分放乙個「null」(表示「空位址」),鍊錶到此結束。
作為有強大功能的鍊錶,對他的操作當然有許多,比如:鍊錶的建立,修改,刪除,插入,輸出,排序,反序,清空鍊錶的元素,求鍊錶的長度等等。
#include#include#include#includetypedef struct node//定義結構體
*linklist;
linklist chushihua()//初始化
void charu(node *l)//頭插法
void weicha(node *l)//尾插法
p->next=tmp;//找到最終位置,將節點貼上鍊錶尾端
}void zhongcha(node *l)//中間插入
q=(linklist)malloc(sizeof(node));
q->name=a;
q->next=p->next;
p->next=q; }
void duqu(node *l)//遍歷
printf("\n"); }
int main()
for(j=i;;j++)
else break;
} duqu(l);
}
C語言 單向鍊錶的基本操作
define crt secure no warnings include include include typedef struct node node 建立頭節點和鍊錶 鍊錶的頭結點位址由函式值返回 node slistcreat return head 鍊錶的遍歷 int slistprin...
c 實現單向鍊錶基本操作
最近又開始了資料結構的學習,去年下半年也學過一段時間,沒能堅持下去,希望這次能堅持久一點,把基礎的資料結構都能掌握 這是我最近對單向鍊錶的一些學習情況 我先是聽mooc的浙大資料結構的課程,在頭腦裡建立起資料結構的形象和特徵,這種方法不一定很好,只是目前我對資料結構的一種學習方法 在看完一種資料結構...
C語言 單向鍊錶 自定義基本操作
在資料的刪除和增加方面,單向鍊錶的操作更加方便,只需要找到相應的節點,然後刪除該節點或者在這個節點之後增加乙個節點,不需要對其他節點進行移動。而順序表在資料的隨機讀取方面更加便利,不需要從頭結點乙個節點乙個節點的後移。在單向鍊錶上,對於指標的移動,只能從前到後。所以,如果要獲的指標前的乙個資料,只能...