1 . Reverse Linked List
/**
1. Definition for singly-linked list.
2. function ListNode(val) {
3. this.val = val;
4. this.next = null;
5. }
*/
/**
6. @param {ListNode} head
7. @return {ListNode}
*/
var reverseList = function(head) {
var currNode = head;
var prevNode = null;
var nextNode = null;
while(currNode != null){
nextNode = currNode.next;
currNode.next = prevNode;
prevNode = currNode;
currNode = nextNode;
}
return prevNode;
};
2 . 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.
/**
* Definition for singly-linked list.
* function ListNode(val) {
* this.val = val;
* this.next = null;
* }
*/
/**
* @param {ListNode} l1
* @param {ListNode} l2
* @return {ListNode}
*/
var mergeTwoLists = function(l1, l2) {
var dummy = new ListNode(0);
var curr = dummy;
while(l1 != null && l2 != null){
if(l1.val >= l2.val){
curr.next = l2;
l2 = l2.next;
}else{
curr.next = l1;
l1 = l1.next;
}
curr = curr.next;
}
if(l1 != null){
curr.next = l1;
}
if(l2 != null){
curr.next = l2;
}
return dummy.next;
};
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/88855.html
摘要:导航小助手剑指从尾到头打印链表题目详情解题思路源代码总结剑指从尾到头打印链表题目详情输入一个链表的头节点,从尾到头反过来返回每个节点的值用数组返回。时间复杂度方法先反转链表并求长度,在将反转后的链表数据拷贝至数组中。 ...
摘要:假设反转对象节点为,反转指向的结点为,反转后指向的结点为首结点。当然也可以根据栈先进后出的特点,使用栈反转链表。 ⭐️前面的话⭐️ 大家好!博主开辟了一个新的专栏—...
⭐️前面的话⭐️ 大家好!这是Java基础知识与数据结构博文的导航帖,收藏我!学习Java不迷路! ?博客主页:未见花闻的博客主页 ?欢迎关注?点赞?收藏⭐️留言? ?本文由未见花闻原创,CSDN首发! ?首发时间:?2021年11月11日? ✉️坚持和努力一定能换来诗与远方! ?参考书籍:?《Java核心技术卷1》,?《Java核心技术卷2》,?《Java编程思想》 ?参考在线编程网站:?牛...
阅读 1407·2021-11-25 09:43
阅读 3192·2019-08-30 15:54
阅读 3584·2019-08-30 15:54
阅读 3210·2019-08-30 15:44
阅读 1819·2019-08-26 12:18
阅读 2411·2019-08-26 11:42
阅读 1019·2019-08-26 11:35
阅读 3532·2019-08-23 18:22