剑指Offer(书):合并两个排序的列表
2024-10-20 07:39:48
题目:输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。
递归版本:
public ListNode Merge(ListNode list1,ListNode list2) {
if (list1 == null) {
return list2;
}
if (list2 == null) {
return list1;
}
ListNode mergeHead = null;
if(list1.val>list2.val){
mergeHead=list2;
mergeHead.next=Merge(list1,list2.next);
}else {
mergeHead=list1;
mergeHead.next=Merge(list1.next,list2);
}
return mergeHead;
}
非递归版本
public ListNode Merge1(ListNode list1, ListNode list2) {
if (list1 == null) {
return list2;
}
if (list2 == null) {
return list1;
}
ListNode mergeHead = new ListNode(0);
ListNode temp = mergeHead;
while (list1 != null && list2 != null) {
if (list1.val < list2.val) {
temp.next = list1;
list1 = list1.next;
} else {
temp.next = list2;
list2 = list2.next;
}
temp = temp.next;
}
temp.next = (list1 == null) ? list2 : list1; return mergeHead.next;
}
最新文章
- HTML 学习笔记 JQuery(DOM 操作2)
- iOS 设置UILabel的行间距并自适应高度
- .NET生成缩略图并下载
- 【原】Spark中Stage的提交源码解读
- 24种设计模式--观察者模式【Observer Pattern】
- JS Message 网页消息提醒
- Copy an serializable object deeply
- json与jsonp区别浅析(json才是目的,jsonp只是手段) (转)
- Dirichlet&#39;s Theorem on Arithmetic Progression
- 【Oracle】-【体系结构】-【DBWR】-DBWR进程相关理解
- Vue2.0结合webuploader实现文件分片上传
- Springboot 框架学习
- Auto Layout - BNR
- HOJ3237----BFS/DFS
- Python3学习笔记20-获取对象信息
- c# ref和out参数
- 锋利的Jquery之插件Cookie记住密码
- CSS入门之定义和应用格式
- Codeforces Round #347 (Div.2)_A. Complicated GCD
- 20145238-荆玉茗 《Java程序设计》第7周学习总结
热门文章
- 【Codeforces1111D_CF1111D】Destroy the Colony(退背包_组合数学)
- Action类为何要 extends ActionSupport以及实现ModelDriven
- mysql join操作
- 快速搭建一个Fabric 1.0的环境(转)
- leetcode378 Kth Smallest Element in a Sorted Matrix
- Android 开机启动服务
- IOS7适配
- ejb2.0用本地引用提高EJB访问效率
- X11/Xlib.h: No such file or directory
- COFF文件格式