合并两个排序链表
2018-10-10 本文已影响0人
我的天气很好啦
🍞环境:牛客的编译环境
🍰语言:JavaScript
☕️难点:
🍊题目:输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。
🌟解题思路:开辟一个新空间,来存放两个链表。
🍇我的代码:
/*function ListNode(x){
this.val = x;
this.next = null;
}*/
function Merge(pHead1, pHead2)
{
// write code here
var node1 = pHead1,
node2 = pHead2,
arr = [];
while(node1 != null && node2 != null){
if(node1.val >= node2.val){
arr.push(node2);
node2 = node2.next;
}
else if(node1.val < node2.val){
arr.push(node1);
node1 = node1.next;
}
}
if(node2 != null){
while(node2){
arr.push(node2);
node2 = node2.next;
}
}
else if(node1 != null){
while(node1){
arr.push(node1);
node1 = node1.next;
}
}
for(let i = 0; i < arr.length; i++){
if(i + 1 < arr.length)
arr[i].next = arr[i+1];
else
arr[i].next = null;
}
return arr[0];
}