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

  • 实例要求:
  • 将两个升序链表合并为一个新的 升序 链表并返回;
  • 新链表是通过拼接给定的两个链表的所有节点组成的;
  • 实例分析:
  • 先拼接两个链表,在使用冒泡排序即可;
  • 示例代码:
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;
	
	    
	}
  • 运行结果:
相关推荐
老师我太想进步了20261 小时前
【数据结构-3】算法美学之降复杂度
数据结构·算法
布莱克6058 小时前
C/C++ 中变量的声明与定义:区别、联系与常见误区
c语言·开发语言·c++·声明·定义
揽星河..11 小时前
【C语言】底层程序设计
c语言·开发语言
w_zero_one13 小时前
算法--构造
java·数据结构·算法
揽星河..15 小时前
【C语言】结构体
c语言·开发语言
唐青枫16 小时前
C 语言 malloc() 详解与实战 Demo
c语言
lisw0517 小时前
互联网上的数据结构可视化!
数据结构·信息可视化
揽星河..20 小时前
【C语言】指针
c语言·开发语言
老师我太想进步了20261 天前
【数据结构-1】例解算法复杂度
数据结构·算法
YSL0701241 天前
一文通关-----排序
数据结构·算法