LeetCode 21. Merge Two Sorted Lists(链表)
来源:互联网 发布:河北网络干部学院 编辑:程序博客网 时间:2024/05/29 18:39
LeetCode 21. Merge Two Sorted Lists(链表)
- LeetCode 21 Merge Two Sorted Lists链表
- 问题描述
- 解题思路
- 参考代码
- By Scarb
- Scarb’s Blog
Tags:
- Linked List
问题描述
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.
解题思路
题意是给两个排序好的链表,要求合并为一个排序好的链表。
创建一个结果链表用于储存合并的结果。
用两个指针分别指向两个链表,比较指针所指值的大小,小的赋给结果指针并且该链表指针后移一位。
最后当某个链表指针为空时直接将另一个链表加到结果链表后面,并返回结果链表。
参考代码
#include <iostream>using namespace std;struct ListNode { int val; ListNode *next; ListNode(int x): val(x), next(NULL) {}};class Solution{public: ListNode* mergeTwoLists(ListNode *l1, ListNode *l2) { ListNode dummy(INT_MIN); ListNode *tail = &dummy; while (l1 && l2) { if (l1->val < l2->val) { tail->next = l1; l1 = l1->next; } else { tail->next = l2; l2 = l2->next; } tail = tail->next; } tail->next = l1 ? l1 : l2; return dummy.next; }};int main(){ Solution sl; ListNode *l1 = new ListNode(1); ListNode *l2 = new ListNode(3); ListNode *l3 = new ListNode(5); ListNode *l4 = new ListNode(2); ListNode *l5 = new ListNode(4); ListNode *l6 = new ListNode(6); l1->next = l2; l2->next = l3; l4->next = l5; l5->next = l6; ListNode *temp = sl.mergeTwoLists(l1, l4); while (temp != NULL) { cout << temp->val << " "; temp = temp->next; } system("pause"); return 0;}
阅读全文
0 0
- LeetCode 21. Merge Two Sorted Lists(链表)
- 21. Merge Two Sorted Lists leetcode(lists)
- [LeetCode]21.Merge Two Sorted Lists
- LeetCode --- 21. Merge Two Sorted Lists
- LeetCode 21.Merge Two Sorted Lists
- [Leetcode] 21. Merge Two Sorted Lists
- 【LeetCode】21.Merge Two Sorted Lists
- 【leetcode】21. Merge Two Sorted Lists
- [leetcode] 21.Merge Two Sorted Lists
- [leetcode] 21.Merge Two Sorted Lists
- [leetcode] 21. Merge Two Sorted Lists
- <LeetCode OJ> 21. Merge Two Sorted Lists
- 21. Merge Two Sorted Lists LeetCode
- leetcode 21. Merge Two Sorted Lists
- Leetcode:21. Merge Two Sorted Lists(JAVA)
- Leetcode ☞ 21. Merge Two Sorted Lists
- LeetCode 21. Merge Two Sorted Lists
- [LeetCode]21. Merge Two Sorted Lists
- ViewFlipper
- (DP)LeetCode#53. Maximum Subarray
- 浏览器中调试js代码
- c++实现简单eval
- QDU首届易途杯大赛-ycb老师与一道简单的物理题
- LeetCode 21. Merge Two Sorted Lists(链表)
- c单链表
- Jquery高级编程(一)
- c语言基础-流程控制06
- https 代理
- MarkdownPad2的一些设置与用法【持续更新······】
- 人工智能之产生式系统
- LeetCode 35. Search Insert Position
- postfix邮件服务的基本配置、邮件别名与群发