算法和数据结构这东西,真的是需要常用常练。这道看似简单的链表合并题,难了我好几个小时,最后还是上网搜索了一种不错算法。后期复习完链表的知识我会将我自己的实现代理贴上。

这个算法巧就巧在用了递归的思想,按照常规方法也能求得,但是就未免太复杂了。

Merge two sorted linked lists and return it as a new list. The new list should be made by splicing together the nodes of the first two lists.

合并两个有序的链表并将其作为新链表返回。 新链表应通过将前两个列表的节点拼接在一起。


 public ListNode mergeTwoLists(ListNode l1,ListNode l2){
ListNode newNode; //new一个新的节点作新的链表
if (l1 == null && l2 == null) {
return null;
}
if (l1 == null) { //如果L1为空,即L2长度大于L1,所以返回L2剩余节点
newNode = l2;
return newNode;
}
if (l2 == null) { //与上同理
newNode = l1;
return newNode;
}
if (l1.val > l2.val) {
newNode = l2;
l2 = l2.next;
} else {
newNode = l1;
l1 = l1.next;
}
newNode.next = mergeTwoLists(l1, l2); //采取递归思想
return newNode;
}

最新文章

  1. RMAN异机还原遭遇ORA-19698错误案例
  2. ReactiveX编程范式
  3. 学习 zookeeper
  4. git merge 和 rebase 区别
  5. web开发必备-网络基础知识---记录一下
  6. VMware v12.1.1 专业版以及永久密钥
  7. LeetCode Permutations II (全排列)
  8. PHP中最容易忘记的一些知识点总结
  9. Delphi RxRichEdit高级操作
  10. POJ1789Truck History
  11. javafx for android or ios ?
  12. psql rank row
  13. asp.net2.0安全性(1)--用户角色篇(代码实现1)--转载来自车老师
  14. spring配置和注解事务同时存在导致的事务嵌套
  15. php(ThinkPHP)实现微信小程序的登录过程
  16. Windows下64位Apache+PHP+MySQL配置
  17. 可遇不可求的Question之error: Failed dependencies: MySQLconflicts 错误篇
  18. jquery.validate.js自定义表单验证
  19. 解题:SDOI 2017 数字表格
  20. 107. Binary Tree Level Order Traversal II(Tree, WFS)

热门文章

  1. laravel 模型关联之(多对多)
  2. 627D Preorder Test
  3. Luogu 4091 [HEOI2016/TJOI2016]求和
  4. javascript总结7:算术运算符
  5. 第04章-面向切面的Spring
  6. Java 核心类库之反射机制
  7. Java反射学习:深入学习Java反射机制
  8. android MVP模式简单介绍
  9. Android ViewPager + Fragment的布局
  10. 平台播放声音(ext.js)