首页 > 试题广场 >

合并两个有序的单链表

[编程题]合并两个有序的单链表
  • 热度指数:3590 时间限制:C/C++ 3秒,其他语言6秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
给定两个升序的单链表的头节点 head1 和 head2,请合并两个升序链表, 合并后的链表依然升序,并返回合并后链表的头节点。

输入描述:
两个升序的单链表的头节点 head1 和 head2


输出描述:
在给定的函数内返回新链表的头指针。
示例1

输入

5
1 2 3 4 5
6 
7 8 9 10 11 12

输出

1 2 3 4 5 7 8 9 10 11 12

备注:
保证链表的长度不大于1000000
头像 我要出去乱说
发表于 2022-05-14 13:05:48
1、思路 同时遍历两条有序链表,将较少的节点接到head之后; 当一条链表遍历完毕后,直接将另一条链表剩余部分全部接在后面即可。 2、代码 list_node * merge_list(list_node * head1, list_node * head2) { list_node 展开全文
头像 总之就是非常可爱
发表于 2022-02-20 15:33:48
# include <bits/stdc++.h> using namespace std; struct list_node{     int val;     struct list_node * next; }; list_node * 展开全文
头像 简笔话_Golden
发表于 2020-04-05 23:56:32
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; /** * @描述:合并两个有序的单链表 * @思路: 1. 确定头节点 * 2. 合并 * 2.1 声 展开全文
头像 Bob_linux
发表于 2020-03-01 16:43:21
list_node * merge_list(list_node * head1, list_node * head2) { //////在下面完成代码 list_node* res= new list_node(); list_node* cur= res; whi 展开全文