合并两个有序链表(冒泡排序实现)

  • 实例要求:
  • 两个升序链表合并为一个新的 升序 链表并返回;
  • 新链表是通过拼接给定的两个链表的所有节点组成的;
  • 实例分析:
  • 先拼接两个链表,在使用冒泡排序即可;
  • 示例代码:
c 复制代码
	struct ListNode* mergeTwoLists(struct ListNode* list1, struct ListNode* list2)
	{
	    if(NULL == list1 )
	    {
	        return list2;
	    }
	    if(NULL == list2)
	    {
	        return list1;
	    }
	
	    struct ListNode *p = list1;
	
	    while(p->next != NULL)
	    {
	        p = p->next;
	    }
	
	    p->next = list2;
	
	    struct ListNode *q = NULL;
	    int temp = 0;
	    p = list1;
	    while(NULL != p->next)
	    {
	        q = p->next;
	        while(NULL != q)
	        {
	            if(p->val > q->val)
	            {
	                temp = p->val;
	                p->val = q->val;
	                q->val = temp;
	            }
	            q = q->next;
	        }
	        p = p->next;
	
	
	    }
	
	
	    return list1;
	
	    
	}
  • 运行结果:
相关推荐
IT策士1 分钟前
Redis 从入门到精通:数据结构Hash 与 List
数据结构·redis·哈希算法
CodeSheep程序羊2 分钟前
宇树科技,即将上市!
java·c语言·c++·人工智能·python·科技·硬件工程
HZ·湘怡21 分钟前
数据结构之排序算法 (1)--插入排序
c语言·数据结构·算法·排序算法
BAGAE33 分钟前
FEC-RS前向纠错编码理论及工程实施研究
c语言·c++·qt·算法·决策树·链表
阿旭超级学得完34 分钟前
Linux基础指令 四(apt,vim,git,cgdb)
linux·服务器·开发语言·数据结构·c++·git·vim
j7~1 小时前
【算法】专题一:双指针之移动零,复写零,快乐数
数据结构·c++·算法·双指针·快乐数·移动零·复写零
wuminyu2 小时前
Java锁机制之park与futex系统级协同机制解析
java·linux·c语言·jvm·c++
caimouse5 小时前
reactos编码规范
c语言·开发语言
AI thought10 小时前
【转】C语言中 -> 是什么意思?
c语言·位移运算符·右移赋值·无符号整数·算术右移
cfm_291411 小时前
Redis五大基本数据结构底层了解
数据结构·数据库·redis