单链表的合并与反转

本文介绍了如何合并和反转单链表。合并时,要求两个链表已排序,通过比较并依次添加节点实现。反转链表则通过断开连接并循环插入新节点来完成。文中附有详细图解和代码实现。
摘要由CSDN通过智能技术生成

目录

1.单链表的合并算法

2.单链表的反转


单链表的合并算法

1.单链表合并的前提:必须两个链表中的数据是排好序的!!!

2.单链表的合并算法图解和解析

       

 1>.你需要一个新的链表;2>.两个链表中同位序的元素进行比较,然后依据合并链表所要求的大小关系放入合并表中。(如图,两个待合并链表中元素的位序是从小到大排列,所以待合并链表的位序也是如此,先将两表的第一位序元素比较,因为2>1,所以将1放在合并表第一位,2放在之后。)     

 3>.对于剩余元素的处理:如图,现在第二个链表的元素还剩下8和9,所以直接照搬下来即可。但是此时的照搬是有条件的,就是队列一的指针是指向NULL(空)的。

3.单链表合并算法的代码:

//用并归的方式合并单链表
int MergeList(LinkList La, LinkList Lb,LinkList Lc){
	if(La == NULL || Lb == NULL || 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值