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

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

單向鏈表 增 刪 改 查

2019-11-14 10:01:48
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
#include <stdio.h>#include <malloc.h>typedef struct node {	int num;	node* next;} NODE;int lenght = -1;//線性表的鏈?zhǔn)浇Y(jié)構(gòu)的長(zhǎng)度/*    創(chuàng)建節(jié)點(diǎn) */NODE* create_node(int num) {	NODE* n = (NODE*) malloc(sizeof(NODE));	n->num = num;	n->next = NULL;	lenght++;	return n;}/*    插入一個(gè)結(jié)點(diǎn)到某個(gè)數(shù)字的后面    return 插入是否成功*/int insert_node(NODE* head, int how, int num) {	NODE* p = head->next;	while (p != NULL) {		if (p->num == how) {			NODE* z = p->next;			p->next = create_node(num);			p->next->next = z;			return 1;		}		p = p->next;	}	return 0;}/*    刪除一個(gè)結(jié)點(diǎn)*/int delete_node(NODE* head, int how) {	NODE* p = head->next;	NODE* last = head;	while (p != NULL) {		if (p->num == how) {			last->next = p->next;			free(p);			p = NULL;			lenght--;			return 1;		}		p = p->next;		last = last->next;	}	return 0;}/*    修改一個(gè)結(jié)點(diǎn)*/void update_node(NODE* head, int how, int num) {	NODE* p = head->next;	while (p != NULL) {		if (p->num == how) {			p->num = num;			return;		}		p = p->next;	}	PRintf("該元素不存在!/n");}/*    查詢一個(gè)節(jié)點(diǎn)*/void search_node(NODE* head, int how) {	NODE* p = head->next;	while (p != NULL) {		if (how == p->num) {			printf("查詢到 %d/n", p->num);			return;		}		p = p->next;	}	printf("該元素不存在!/n");}void print_list(NODE* head) {  //線性表的鏈?zhǔn)浇Y(jié)構(gòu)的遍歷	NODE* p = head;	while (p != NULL) {		printf("%d ", p->num);		p = p->next;	}	printf("/n/n");}int main() {	NODE* headNode = create_node(-1);  //創(chuàng)建頭結(jié)點(diǎn)	NODE* p = headNode;	for (int i = 0; i < 10; i++) {		p->next = create_node(i);		if (headNode->next == NULL) {			printf("NULL");		}		p = p->next;	}	printf("線性表的鏈?zhǔn)浇Y(jié)構(gòu)的長(zhǎng)度 = %d/n", lenght);	print_list(headNode->next);	printf("--插入數(shù)據(jù):100/n");	insert_node(headNode, 4, 100); //在數(shù)字4的后面插入100 	printf("線性表的鏈?zhǔn)浇Y(jié)構(gòu)的長(zhǎng)度 = %d/n", lenght);	print_list(headNode->next);	printf("--刪除數(shù)據(jù):0/n");	delete_node(headNode, 0);  //刪除數(shù)字為0的節(jié)點(diǎn)	printf("線性表的鏈?zhǔn)浇Y(jié)構(gòu)的長(zhǎng)度 = %d/n", lenght);	print_list(headNode->next);	printf("--修改數(shù)據(jù):1/n");	update_node(headNode, 1, 111); //修改數(shù)字1為111	printf("線性表的鏈?zhǔn)浇Y(jié)構(gòu)的長(zhǎng)度 = %d/n", lenght);	print_list(headNode->next);		printf("--查詢數(shù)據(jù):1000/n");	search_node(headNode, 1000); //查詢1000是否存在于鏈表當(dāng)中  	return 0;}
上一篇:java中的常量

下一篇:jdbc的不足之處

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 寿宁县| 额尔古纳市| 错那县| 鹤岗市| 阿瓦提县| 三都| 北辰区| 邯郸市| 鸡东县| 长葛市| 玉林市| 赫章县| 棋牌| 莎车县| 宁武县| 黑河市| 靖江市| 原阳县| 朝阳市| 吴堡县| 宁津县| 玛纳斯县| 泗水县| 宕昌县| 徐汇区| 翁源县| 清水县| 临武县| 赤水市| 江陵县| 锡林浩特市| 临泽县| 闽侯县| 江永县| 沁源县| 贞丰县| 石棉县| 西丰县| 遵化市| 稷山县| 农安县|