迭代法 思路: 按顺序交换对应两个节点位置,交换前用一个节点充当要交换的节点的前驱,交换节点后更新前驱的位置。 代码: # Definition for singly-linked list. # class ListNode: # def __init__(self, x): # self.val ...
分类:
其他好文 时间:
2020-05-06 11:45:10
阅读次数:
60
Two Pointer 141. Linked List Cycle 判断链表是否有环 Can you solve it using O(1) (i.e. constant) memory? "leetcode 141. Linked List Cycle" 142. Linked List Cyc ...
分类:
其他好文 时间:
2020-05-05 18:11:17
阅读次数:
54
题目描述 /** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */ class Soluti ...
分类:
其他好文 时间:
2020-05-03 21:37:19
阅读次数:
66
题目: 合并K个排序链表:合并 k 个排序链表,返回合并后的排序链表。请分析和描述算法的复杂度。 思路: 暴力法 程序: # Definition for singly-linked list. # class ListNode: # def __init__(self, x): # self.va ...
分类:
编程语言 时间:
2020-05-03 18:56:40
阅读次数:
76
迭代法 思路: 当L1和L2都不是空链表时,判断L1和L2哪一个链表的头节点的值更小,将较小值的节点添加到结果里。当一个节点添加到结果里后,将对应链表中的节点向后移一位。 代码: # Definition for singly-linked list. # class ListNode: # def ...
分类:
其他好文 时间:
2020-05-03 12:57:09
阅读次数:
49
题目: 分隔链表:给定一个链表和一个特定值 x,对链表进行分隔,使得所有小于 x 的节点都在大于或等于 x 的节点之前。 你应当保留两个分区中每个节点的初始相对位置。 思路: 要保证相对位置不变,使用尾插法。再使用两个空链表,一个存放小于x的,一个存放大于等于x的,然后组合。 程序: # Defin ...
分类:
编程语言 时间:
2020-05-02 21:22:10
阅读次数:
185
题目: 删除排序链表中的重复元素 II:给定一个排序链表,删除所有含有重复数字的节点,只保留原始链表中 没有重复出现 的数字。 思路: 懒人思维,使用哈希表。 程序: # Definition for singly-linked list. # class ListNode: # def __ini ...
分类:
编程语言 时间:
2020-05-02 19:16:59
阅读次数:
118
题目将两个升序链表合并为一个新的升序链表并返回。 新链表是通过拼接给定的两个链表的所有节点组成的。 代码 / Definition for singly linked list. public class ListNode { int val; ListNode next; ListNode(int ...
分类:
其他好文 时间:
2020-05-01 18:54:00
阅读次数:
54
```javapackage 链表;/** * https://leetcode-cn.com/problems/middle-of-the-linked-list/ * 876. 链表的中间结点 * */public class _876_Middle_of_the_Linked_List { c... ...
分类:
其他好文 时间:
2020-05-01 18:22:25
阅读次数:
56
题目: 旋转链表:给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数。 思路: 将链表成环进行旋转,对于K,需要判断数目,使用超过了链表的长度。 程序: # Definition for singly-linked list. # class ListNode: # de ...
分类:
移动开发 时间:
2020-05-01 18:17:27
阅读次数:
172