数据结构之头结点链表的三种插入方式(头插法,尾插法,在pos处插入)
生活随笔
收集整理的這篇文章主要介紹了
数据结构之头结点链表的三种插入方式(头插法,尾插法,在pos处插入)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
創建頭結點
流程:首先創建頭結點表指針并為其分配空間——并將頭結點指向空,防止出現段錯誤。
代碼:
頭插法
流程:判斷數據傳入是否正確——創建一個新結點并判斷結點創建是否成功——給新結點成員變量賦值——讓新結點變為鏈表的第一個結點
代碼:
尾插法
流程:判斷傳入數據是否正確——創建一個新結點并為其分配空間,然后判斷創建是否成功——給新結點成員變量賦值——找到最后一個結點并讓其成為最后一個節點
代碼:
中間插法(在pos處插入數據)
流程:判斷傳入數據和pos的位置是否符題意——找到插入位置的前一個結點,找到后要判斷所找的位置是否越界——創建一個新結點并為其分配空間,然后判斷創建是否成功——給新結點成員變量賦值——找到最后一個結點并讓其成為最后一個結點。代碼:
//中間插法 int Insert_Pos(Node *h, int pos, LinkData data) {if (NULL == h){return FALSE;}Node* tmp = h;int i;for (i = 0; i < pos - 1; i++){if (NULL == tmp){break;}tmp = tmp->next;}if (NULL == tmp){printf ("插入位置越界");return FALSE;}Node* node = (Node*) malloc(sizeof(Node) / sizeof(char));if (NULL == node){return FALSE;}node->data = data;node->next = tmp->next;tmp->next = node;return TRUE; }頭結點的好處就在于他不用考慮空表的情況,詳細的注釋之前的博客有,這邊我就省略了。
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的数据结构之头结点链表的三种插入方式(头插法,尾插法,在pos处插入)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: VMware Fusion配置CentO
- 下一篇: IDEA模块(module)的概念和使用