LeetCode题组:第21题-合并两个有序链表
生活随笔
收集整理的這篇文章主要介紹了
LeetCode题组:第21题-合并两个有序链表
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
1.題目:合并兩個有序鏈表
將兩個升序鏈表合并為一個新的升序鏈表并返回。新鏈表是通過拼接給定的兩個鏈表的所有節(jié)點組成的。
示例:
輸入:1->2->4, 1->3->4
輸出:1->1->2->3->4->4
2.我的解答
struct ListNode{int val;struct ListNode *next; };struct ListNode* mergeTwoLists(struct ListNode* l1, struct ListNode* l2){struct ListNode* tmp; //1號標記點struct ListNode header; //1號標記點header.next=l1;l1=&header;while(l2!=0){while(l1->next!=0&&l1->next->val<l2->val) l1=l1->next;tmp=l2;l2=l2->next;tmp->next=l1->next;l1->next=tmp;}return header.next; }3.難點
1號標記點處,關于結構體指針的一些問題。下面兩行語句的區(qū)別
struct ListNode* tmp; struct ListNode header;可以查看我的博客:C語言結構體指針
總結
以上是生活随笔為你收集整理的LeetCode题组:第21题-合并两个有序链表的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: LeetCode题组:第14题-最长公共
- 下一篇: C语言结构体指针