题目:输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。

递归版本:

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;
}

最新文章

  1. HTML 学习笔记 JQuery(DOM 操作2)
  2. iOS 设置UILabel的行间距并自适应高度
  3. .NET生成缩略图并下载
  4. 【原】Spark中Stage的提交源码解读
  5. 24种设计模式--观察者模式【Observer Pattern】
  6. JS Message 网页消息提醒
  7. Copy an serializable object deeply
  8. json与jsonp区别浅析(json才是目的,jsonp只是手段) (转)
  9. Dirichlet&#39;s Theorem on Arithmetic Progression
  10. 【Oracle】-【体系结构】-【DBWR】-DBWR进程相关理解
  11. Vue2.0结合webuploader实现文件分片上传
  12. Springboot 框架学习
  13. Auto Layout - BNR
  14. HOJ3237----BFS/DFS
  15. Python3学习笔记20-获取对象信息
  16. c# ref和out参数
  17. 锋利的Jquery之插件Cookie记住密码
  18. CSS入门之定义和应用格式
  19. Codeforces Round #347 (Div.2)_A. Complicated GCD
  20. 20145238-荆玉茗 《Java程序设计》第7周学习总结

热门文章

  1. 【Codeforces1111D_CF1111D】Destroy the Colony(退背包_组合数学)
  2. Action类为何要 extends ActionSupport以及实现ModelDriven
  3. mysql join操作
  4. 快速搭建一个Fabric 1.0的环境(转)
  5. leetcode378 Kth Smallest Element in a Sorted Matrix
  6. Android 开机启动服务
  7. IOS7适配
  8. ejb2.0用本地引用提高EJB访问效率
  9. X11/Xlib.h: No such file or directory
  10. COFF文件格式