日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

数据结构-单循环链表(C语言代码)

發布時間:2025/3/21 编程问答 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 数据结构-单循环链表(C语言代码) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

數據結構純屬新手,小白一枚,歡迎批評指正!
下面這個圖是接下來要實現的單循環鏈表!

直接上代碼OVO!

定義結構體

typedef struct Node {int data; //數據域struct Node* next; //指針域 }Node;

單循環鏈表跟單鏈表類似只有數據域和指向下一個結點的指針域,不過尾結點的指針域指向第一個結點。

創建鏈表

//創建單循環鏈表 Node* initList() {Node* L = (Node*)malloc(sizeof(Node));L->data = 0;L->next = L;return L; }

頭插法

//頭插法 void headInsert(Node* L, int data) {Node* node = (Node*)malloc(sizeof(Node));node->data = data;node->next = L->next;L->next = node;L->data++; }

尾插法

//尾插法 void tailInsert(Node* L,int data) {Node* n = L;Node* node = (Node*)malloc(sizeof(Node));node->data = data;n = L->next;while (n->next != L) {n = n->next;}node->next = n->next;n->next = node;L->data++;}

刪除結點

//刪除結點 int deleteList(Node* L, int data) {Node* node = L->next;Node* preNode = L;while (node != L) {if (node->data == data) {preNode->next = node->next;L->data--;free(node);return TRUE;}preNode = node;node = node->next;}return FALSE; }

遍歷鏈表

//遍歷鏈表 void printList(Node* L) {Node* node = L->next;while (node != L) {printf("%d->", node->data);node = node->next;}printf("NULL\n"); }

全部代碼:

#include <stdio.h> #include <stdlib.h>#define TRUE 1 #define FALSE 0typedef struct Node {int data;struct Node* next; }Node;//創建單循環鏈表 Node* initList() {Node* L = (Node*)malloc(sizeof(Node));L->data = 0;L->next = L;return L; }//頭插法 void headInsert(Node* L, int data) {Node* node = (Node*)malloc(sizeof(Node));node->data = data;node->next = L->next;L->next = node;L->data++; }//尾插法 void tailInsert(Node* L,int data) {Node* n = L;Node* node = (Node*)malloc(sizeof(Node));node->data = data;n = L->next;while (n->next != L) {n = n->next;}node->next = n->next;n->next = node;L->data++;}//刪除結點 int deleteList(Node* L, int data) {Node* node = L->next;Node* preNode = L;while (node != L) {if (node->data == data) {preNode->next = node->next;L->data--;free(node);return TRUE;}preNode = node;node = node->next;}return FALSE; }//遍歷鏈表 void printList(Node* L) {Node* node = L->next;while (node != L) {printf("%d->", node->data);node = node->next;}printf("NULL\n"); }int main(void) {Node* L=initList();headInsert(L,1);headInsert(L,2);headInsert(L,3);headInsert(L,4);headInsert(L,5);tailInsert(L,6);tailInsert(L,7);deleteList(L,1);printList(L);return 0; }

運行截圖:

總結

單循環鏈表是單鏈表的另一種形式,其結構特點鏈表中最后一個結點的指針域不再是結束標記,而是指向整個鏈表的第一個結點,從而使鏈表形成一個環。.
和單鏈表相同,單循環鏈表也有帶頭結點結構和不帶頭結點結構兩種,帶頭結點的循環單鏈表實現插入和刪除操作較為方便。.

總結

以上是生活随笔為你收集整理的数据结构-单循环链表(C语言代码)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 黄网站免费在线 | 91亚洲精品一区 | 激情777| 亚洲第一色区 | 网站色 | 337p日本大胆噜噜噜噜 | 777国产成人入口 | 亚洲天天视频 | 国产免费黄色片 | 91porny丨首页入口在线 | 日本啊啊视频 | 老熟妇毛茸茸 | 欧美亚洲影院 | 成人在线视频在线观看 | 国产富婆一级全黄大片 | 少妇精品久久久久久久久久 | 欧美日韩精品电影 | 成年人性生活免费视频 | 欧美v亚洲 | 99精品影视| 熟妇高潮一区二区高潮 | 国产香蕉视频 | 在线观看国产一区二区三区 | 国产一卡二卡 | 日韩在线观看一区二区 | 深夜小视频在线观看 | 女人性高潮视频 | 人体写真 福利视频 | 在线观看亚洲专区 | 激情视频一区二区 | 欧美亚洲精品一区 | 美女视频黄色在线观看 | 亚洲一区欧美一区 | 国产视频一区二区视频 | 国产精品天天干 | 理论片毛片 | 欧美日韩系列 | 激情五月开心婷婷 | 成人性生生活性生交3 | 久久久久亚洲AV成人无在 | 亚洲福利视频一区二区三区 | 伊人色区| 国产人妖一区二区三区 | 九色国产精品 | 亚洲精品免费视频 | 操一操av| 九九视频免费看 | 国产xxxx做受视频 | 午夜小网站 | 伊人春色在线观看 | 草久视频在线观看 | 亚洲在线免费观看 | 成人女同在线观看 | 久色网站 | 精品久久人人妻人人做人人 | 91久色蝌蚪| 国产一二三区精品 | 综合狠狠 | 一区二区视频观看 | 午夜偷拍福利视频 | 亚欧洲精品在线视频 | 久操视频在线观看免费 | 天天草影院| 狠狠操在线视频 | 亚洲干干干 | 女同视频网站 | 久热精品在线 | 最近中文字幕第一页 | 天天干狠狠插 | 久久久精品999 | 天天插天天透 | 911香蕉视频| 久久性生活片 | 国产91免费视频 | 亚洲综合精品国产一区二区三区 | 亚洲二区一区 | 在线综合视频 | 欧美怡春院 | 六月色婷 | 在线cao | 亚洲精品乱码久久久久久日本蜜臀 | 久久人人精| 亚洲成人一二区 | 日本xxxxwwwww| 自慰无码一区二区三区 | 精品无码免费视频 | 久久久久黄色 | 色94色欧美 | 日本黄色网页 | 性综合网 | 欧美另类国产 | 久久国产精品无码一级毛片 | 四色成人av永久网址 | 中文字幕一区二区不卡 | 日本公妇乱偷中文字幕 | 老熟妻内射精品一区 | 久一在线视频 | 日韩不卡高清视频 | 少妇69xx|