将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。
输入:l1 = [1,2,4], l2 = [1,3,4]
输出:[1,1,2,3,4,4]
先开始做这题硬是没看懂这个链表有啥用,平时接触最多的也是数组不是链表
看完题目很 emo,此题没做出来
看了答案,也没太看懂 ,也很emo
不看不会,一看就会,一写就废;
我啥啥不行,/(ㄒoㄒ)/~~
狗子啥都会 一问就说我花钱买的视频你咋不看 烦死了 他可真烦 很烦 更烦自己菜
此题因为是升序排列的,所以只要比较连个链表的当前值大小即可,val是当前链表的值,next是代表之后的链表组;
其实我只想回家过年,嗑嗑瓜子,唠唠家常,不想努力了,坚持能有好结果嘛???
这题依旧只要暴力题解:
// @lc code=start
/**
* Definition for singly-linked list.
* function ListNode(val, next) {
* this.val = (val===undefined ? 0 : val)
* this.next = (next===undefined ? null : next)
* }
*/
/**
* @param {ListNode} list1
* @param {ListNode} list2
* @return {ListNode}
*/
var mergeTwoLists = function (list1, list2) {
//先定义个空链表
let demmy={val:0,next:null};
//定义变量赋值空链表
let head = demmy;
//list1和list2不为空时循环遍历
while(list1&&list2){
//比较链表间值大小
if(list1.val<list2.val){
head.next=list1
list1=list1.next
}else{
head.next=list2
list2=list2.next
}
head=head.next
}
head.next=list1==null?list2:list1
return demmy.next
};
// @lc code=end
还是不太懂链表 /(ㄒoㄒ)/~~ 不过感觉这个很基础了 回去看视频补补数据结构吧~~