每日一题——链表合并
来源:互联网 发布:mac的python 编辑:程序博客网 时间:2024/06/06 14:17
递归class Solution {public: /** * @param ListNode l1 is the head of the linked list * @param ListNode l2 is the head of the linked list * @return: ListNode head of linked list */ ListNode *mergeTwoLists(ListNode *l1, ListNode *l2) { // write your code here if(l1 ==NULL) return l2; if(l2 == NULL) return l1; ListNode* newList = NULL; if(l1->val <= l2->val) { newList = l1; newList->next = mergeTwoLists(l1->next,l2); } if(l1->val > l2->val) { newList = l2; newList->next = mergeTwoLists(l1,l2->next); } return newList; }};
非递归ListNode *mergeTwoLists(ListNode *l1, ListNode *l2) { // write your code here if(l1 ==NULL) return l2; if(l2 == NULL) return l1; ListNode* newNode = NULL; if(l1->val <= l2->val) { newNode = l1; l1 = l1->next; } else { newNode = l2; l2 = l2->next; } ListNode* cur = newNode; while(l1 && l2) { if(l1->val <= l2->val) { cur->next = l1; cur = l1; l1 = l1->next; } else { cur->next = l2; cur = l2; l2 = l2->next; } } if(l1) cur->next = l1; if(l2) cur->next = l2; return newNode; }
阅读全文
0 0
- 每日一题——链表合并
- 每日一题(7) - 合并两个有序链表
- 每日一刷——合并有序链表&&求n个数的和
- 每日一题之合并有序链表,合并后任有序
- 【每日一题-1】有序链表合并与累加和问题
- 每日一题(21)——区间重合检测(一)(普通区间合并&并查集)
- 每日一题——带环链表
- 每日一题——链表相交问题
- 每日一题(4) - 反转链表
- 链表相交问题【每日一题】
- 每日一题——逆置单链表
- 每日一题——子树
- 每日一题——位图
- 面试—每日一题(1)
- 面试—每日一题(2)
- 面试—每日一题(3)
- 面试—每日一题(4)
- 面试—每日一题(5)
- Selenium 等待方式
- ext store动态修改url
- Express 学习笔记纯干货(Routing、Middleware、托管静态文件、view engine 等等)
- C++ windows多线程程序到linux下运行失败,多线程无优化效果
- 解决案例:ORA-00205: error in identifying control file, check alert log for more info
- 每日一题——链表合并
- 函数指针与typedef
- Request processing failed; nested exception is java.lang.NullPointerException
- Virtuoso的localhost启动步骤
- unkown the request
- 敷面膜的时候肌肤出现刺痛感,我过敏了吗?
- localStorage使用总结
- String,StirngBuffer和StringBulider类
- gmagick应用笔记