头插法建立单链表学习总结
生活随笔
收集整理的這篇文章主要介紹了
头插法建立单链表学习总结
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
單鏈表是一種鏈式存儲的數據結構,每一個節點存放數據和指向下一個節點的指針。
?
頭插法是指每次將新節點插入頭部(head節點之后),最終鏈表順序與插入順序相反。
?
這就好比你在食堂排隊,大媽所在窗口是頭部,每次都有人插入到隊伍最前面,結果你是最后買到飯的。
?
圖解:
?
?
以下代碼是新建鏈表并遍歷輸出元素
#include<stdio.h> #include<stdlib.h>typedef struct _node{int data;struct _node *next; }node;node *headinsert(int n);//創建鏈表并插入新節點 void output(node *head);//遍歷鏈表并輸出節點數據 void destroy(node *head);//清除鏈表 int main(){int n;node *head;scanf("%d",&n);head=headinsert(n);output(head);destroy(head);return 0; } node *headinsert(int n){node *head,*q;head=(node *)malloc(sizeof(node));//malloc返回void* 需要強制轉換類型 head->next=NULL;for(int i=0;i<n;i++){ //申請新節點并插入鏈表 q=(node *)malloc(sizeof(node));scanf("%d",&q->data);q->next=head->next; head->next=q;}return head; }void output(node *head){node *q; //新建指針q使其從頭節點遍歷鏈表 q=head;while(q->next!=NULL){q=q->next;printf("%d ",q->data);} }void destroy(node *head){node *q,*p;for(p=head;p;p=q){q=p->next;free(p);} }?
轉載于:https://www.cnblogs.com/NDKY9/p/6803387.html
總結
以上是生活随笔為你收集整理的头插法建立单链表学习总结的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [补] windows C socke
- 下一篇: 移动端分享插件使用总结