c语言链表之链表后面插入节点
加入此时我们有 1,2,3,4,5 五个节点,需要在2节点和3节点之间插入一个节点,新节点是 100。
思路是:
先让 100->next = 2->next;
然后 2->next = 100;
#include <stdio.h>struct Test
{int data;struct Test *next;
};
// 遍历链表并输出
void printLink(struct Test *head)
{struct Test *p = head;while(p != NULL){printf("%d ",p->data);p = p->next;}
}
// 指定节点后方插入
int insertFromBehind(struct Test *head, int data, struct Test *new)
{struct Test *p = head;while(p != NULL){if(p->data == data){new->next = p->next;p->next = new;return 1;}p = p->next;}return 0;
}int main()
{struct Test t1 = {1, NULL};struct Test t2 = {2, NULL};struct Test t3 = {3, NULL};struct Test t4 = {4, NULL}; struct Test t5 = {5, NULL};t1.next = &t2;t2.next = &t3;t3.next = &t4;t4.next = &t5; struct Test t6 = {100, NULL}; printf("use t1 to print three nums\n"); printLink(&t1);putchar('\n');ret = insertFromBehind(&t1, 2, &t6);printLink(&t1);putchar('\n');return 0;
}
c语言链表之链表后面插入节点相关推荐
- 寒假自主学习项目一 - 链表(6、插入节点)
/**Copyright(c)2014,烟台大学计算机学院*All rights reserved.*文件名称:test.cpp*作者:满星辰*完成日期:2014年 2月 4日*版本号:v1.0*问题 ...
- 单链表的算法之尾部插入节点
单链表的算法之插入节点 1.访问链表中各个自己的指针 (1)只能用头指针,不能用各个节点自己的指针.因为实际中我们保存链表不会保存各个节点的指针,只能通过头指针来访问链表节点. (2)前一个节点内部的 ...
- C语言已排序链表插入新节点保持排序状态(附完整源码)
C语言已排序链表插入新节点保持排序状态 C语言已排序链表插入新节点保持排序状态完整源码(定义,实现,main函数测试) C语言已排序链表插入新节点保持排序状态完整源码(定义,实现,main函数测试) ...
- c语言在尾部添加新节点,在单链表最后插入节点
要在单链表的最后插入节点,需要提及以下两种情况. 新节点添加到空链表中 新节点添加到链表的末尾 1. 新节点添加到空链表中 如果满足条件(head == NULL). 因此,只需要在C语言中使用mal ...
- (C语言)写一个函数insert,用来向一个动态链表插入节点
写一个函数insert,用来向一个动态链表插入节点 用creat,print,del,insert四个函数,编写主函数,先后调用这些函数,实现链表的建立,输出,删除和插入,从主函数中指定需要删除和插入 ...
- 双链表中插入节点(C语言实现)
文章目录 1. 相关背景介绍 1.1 双链表概念 1.2 双链表的优势与劣势 1.3 双链表插入节点的位置 2. 不同位置插入数据 2.1 在DLL的前端添加节点 2.2 在给定节点之前添加节点 2. ...
- 双链表(插入节点操作)
在双链表L中第i个位置插入值域为e的结点. 双链表的存储结构定义: typedef struct DLinkList{int data;DLinkList * prior;DLinkList * ne ...
- 用c语言实现单链表的初始化,建表,查找,求长度,插入,删除等操作,【YTU+2430+C语言习题+链表建立+插入+删除+输(5)...
的打印.判断链表是否为空.计算链表长度.插入节点.删除节点.删除整个链表.(2) 线性表adt顺序存储实现中的创建.查找.插入和删除等基本操作及相关算法,线性表adt链式存储实现中单链表.循环链表和双 ...
- C语言数据结构篇——单循环链表的创建,插入,节点删除,打印等操作
作者名:Demo不是emo 主页面链接:主页传送门 创作初心:对于计算机的学习者来说,初期的学习无疑是最迷茫和难以坚持的,中后期主要是经验和能力的提高,我也刚接触计算机1年,也在不断的探索,在CS ...
- C语言数据结构篇——双链表的创建,插入,节点删除,打印等操作
作者名:Demo不是emo 主页面链接:主页传送门 创作初心:对于计算机的学习者来说,初期的学习无疑是最迷茫和难以坚持的,中后期主要是经验和能力的提高,我也刚接触计算机1年,也在不断的探索,在CSD ...
最新文章
- 每次开机都出现Trojan.DL.Dagi.b 病毒的问题
- vs-halcon-大恒相机配置
- 04 - JavaSE之异常处理
- linux cat EOF使用示例
- 关于表单回车自动提交的讨论
- Linux SPI框架
- python中的计算符号
- 移动云2020 H1营收44.57亿元,同比增长556.4%
- redis面试常问--缓存雪崩
- Vue:中向对象中添加数据
- vcpkg编译库位数总结
- SpringBoot Kafka工具类封装
- Unity2D入门(二):图层layer和角色建立
- 三色球问题python_面试题-三色球问题
- Windows注册表内容详解(转载)
- Win10家庭版远程桌面工具RDP Wrapper出现Not listening解决方案
- Power BI Echart Tree开发自定义可视化对象
- 童瑶正式成为NEIWAI内外品牌大使
- 学微服务必经之路——Nacos新手入门(上)
- 使用IDEA 自带的数据库脚本导出