【leetcode】Merge Two Sorted Lists
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.
水题不解释,一A,代码如下:
1 /** 2 * Definition for singly-linked list. 3 * struct ListNode { 4 * int val; 5 * ListNode *next; 6 * ListNode(int x) : val(x), next(NULL) {} 7 * }; 8 */ 9 class Solution { 10 public: 11 ListNode *mergeTwoLists(ListNode *l1, ListNode *l2) { 12 ListNode* head; 13 if(l1 == NULL) 14 return l2; 15 if(l2 == NULL) 16 return l1; 17 18 if(l1->val < l2->val) 19 { 20 head = l1; 21 l1 = l1->next; 22 } 23 else 24 { 25 head = l2; 26 l2 = l2->next; 27 } 28 ListNode* current = head; 29 while(l1 != NULL && l2 != NULL){ 30 if(l1->val < l2->val){ 31 current->next = l1; 32 l1 = l1->next; 33 current = current->next; 34 } 35 else 36 { 37 current->next = l2; 38 l2 = l2->next; 39 current = current->next; 40 } 41 } 42 if(l1 != NULL) 43 current->next = l1; 44 if(l2 != NULL) 45 current->next = l2; 46 return head; 47 } 48 };
Java版本代码:
1 /** 2 * Definition for singly-linked list. 3 * public class ListNode { 4 * int val; 5 * ListNode next; 6 * ListNode(int x) { 7 * val = x; 8 * next = null; 9 * } 10 * } 11 */ 12 public class Solution { 13 public ListNode mergeTwoLists(ListNode l1, ListNode l2) { 14 if(l1 == null) 15 return l2; 16 if(l2 == null) 17 return l1; 18 19 ListNode head = null; 20 if(l1.val < l2.val) 21 { 22 head = l1; 23 l1 = l1.next; 24 }else{ 25 head = l2; 26 l2 = l2.next; 27 } 28 29 ListNode current = head; 30 while(l1 != null && l2 != null){ 31 if(l1.val < l2.val){ 32 current.next = l1; 33 l1 = l1.next; 34 }else{ 35 current.next = l2; 36 l2 = l2.next; 37 } 38 current = current.next; 39 } 40 41 if(l1 != null) 42 current.next = l1; 43 if(l2 != null) 44 current.next = l2; 45 46 return head; 47 } 48 }
分类:
leetcode刷题总结
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了