国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

循環單鏈表的合并

2019-11-11 07:39:37
字體:
來源:轉載
供稿:網友

代碼示例

/* function:循環單鏈表的合并 created by : xilong date: 2017.2.5*/#include "iostream"using namespace std;#define OK 1#define ERROR 0#define TRUE 1#define FALSE 0typedef double ElemType;typedef int Status;typedef struct Node{ ElemType data; struct Node* next;}Node;typedef struct Node* CLinkList;/* 功能:初始化*/CLinkList CLinkList_Init(){ CLinkList head; head = (CLinkList)malloc(sizeof(CLinkList)); head->next = head; // 循環空鏈表 return head;}/* 功能:尾插法創建循環單鏈表*/void CLinkList_CreateFormTail(CLinkList *head){ CLinkList p, s; p = *head; double data; int flag = 1; while (flag) { cin >> data; if (data != -99999) { s = (CLinkList)malloc(sizeof(CLinkList)); s->data = data; p->next = s; s->next = *head; p = s; } else { flag = 0; p->next = *head; } }}/* 功能:合并兩個循環鏈表*/CLinkList CLinkList_merge(CLinkList *LA, CLinkList *LB){ CLinkList p1, p2; p1 = *LA; p2 = *LB; if (p1->next == p1) // 如果第一個鏈表為空,就直接返回第二個鏈表的頭結點 { return *LB; } if (p2->next == p2) // 如果第二個鏈表為空,返回第一個鏈表頭結點 { return *LA; } while (p1->next != (*LA)) // 找到表LA的表尾,用p1指向它 { p1 = p1->next; } while (p2->next != (*LB)) // 找到表LB的表尾,用p2指向它 { p2 = p2->next; } p2->next = *LA; // 修改表LB的尾指針,使之指向表LA的頭結點 p1->next = (*LB)->next; // 修改表LA的尾指針,使之指向表LB中的第一個結點 free(*LB); return *LA; // 返回表LA的頭結點}/* 功能:打印鏈表數據*/Status CLinkList_PRint(CLinkList *head){ CLinkList p; p = (*head)->next; if ((*head)->next == (*head)) { cout << "空鏈表!" << endl; return ERROR; } while (p != (*head)) { cout << p->data << " "; p = p->next; } cout << endl; return OK;}void main(){ CLinkList LA, LB, LAB; cout << "LA鏈表的初始化以及創建:(輸入-99999結束)" << endl; LA = CLinkList_Init(); CLinkList_CreateFormTail(&LA); cout << "打印LA鏈表數據:"; CLinkList_Print(&LA); cout << "LB鏈表的初始化以及創建:(輸入-99999結束)" << endl; LB = CLinkList_Init(); CLinkList_CreateFormTail(&LB); cout << "打印LB鏈表數據:"; CLinkList_Print(&LB); LAB = CLinkList_merge(&LA, &LB); cout << "打印合并后的鏈表:"; CLinkList_Print(&LAB); cout << "插入數據,輸入插入位置:"; system("pause");}

程序截圖

這里寫圖片描述

說明

  有關循環單鏈表的刪除,查找等操作,在前幾篇文章都有完整的代碼示例和程序截圖。   單鏈表的基本操作:http://blog.csdn.net/xilong_666/article/details/54865927


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 晋城| 新宾| 保亭| 白沙| 鹿泉市| 连江县| 长顺县| 太谷县| 灌阳县| 汉沽区| 巨野县| 泸定县| 秭归县| 梅河口市| 金溪县| 萍乡市| 布尔津县| 金乡县| 闽清县| 兴文县| 呼图壁县| 平潭县| 池州市| 英德市| 五家渠市| 白城市| 玛多县| 南川市| 龙里县| 毕节市| 思南县| 江西省| 天水市| 仁化县| 宁都县| 洮南市| 武强县| 长汀县| 蒲城县| 吕梁市| 灯塔市|