
LeetCode
cn_L4EX
这个作者很懒,什么都没留下…
展开
-
LeetCode 61. Rotate List(C++)
题目描述给定一个链表,将链表向右循环移动 kk 次,kk 是非负整数。样例1输入:1->2->3->4->5->NULL, k = 2输出:4->5->1->2->3->NULL解释:向右移动1步后:5->1->2-&g转载 2019-02-14 20:39:30 · 141 阅读 · 0 评论 -
LeetCode 206. Reverse Linked List(C++)
题目描述翻转一个单链表。进一步: 能否同时给出迭代算法和递归算法?样例输入:1->2->3->4->5->NULL输出:5->4->3->2->1->NULL算法1(链表操作,迭代) O(n)翻转即将所有节点的next指针指向前驱节点。由于是单链表,我们在迭代时不能直接找到转载 2019-02-14 20:47:42 · 151 阅读 · 0 评论 -
LeetCode 19. Remove Nth Node From End of List(C++)
题目描述给定一个单向链表,要求删除从结尾数第nn个结点,并返回修改后的表头。链表结点的定义如下:struct ListNode {int val;ListNode *next;ListNode(int x) : val(x), next(NULL) {}};样例给定数组单向链表 1->2->3->4->5 ,以及 n = 2 ,修改后的链表原创 2019-02-12 14:48:22 · 241 阅读 · 2 评论 -
LeetCode 143. Reorder List(C++)
题目描述Given a singly linked list L: L0→L1→…→Ln-1→Ln,reorder it to: L0→Ln→L1→Ln-1→L2→Ln-2→…You may not modify the values in the list’s nodes, only nodes itself may be changed.Example 1:Given 1->2...原创 2019-02-18 15:07:43 · 206 阅读 · 0 评论 -
LeetCode 160. Intersection of Two Linked Lists
题目描述给定两个链表,请找它们的交汇点。注意:如果两个链表不相交,则返回 null;在函数结束时,两个链表必须保持原来的结构;链表中不存在环;你的代码需要的时间复杂度是 O(n),额外的空间复杂度是 O(1);样例给定如下两个链表:A: a1 → a2 ↘ c1 → c2 → c3 ↗B: b1 → b2 ...转载 2019-02-18 17:48:09 · 144 阅读 · 0 评论 -
LeetCode 141. Linked List Cycle
题目描述给定一个链表,判断是否存在环。进一步:能否只使用额外 O(1) 的空间?算法(链表,指针扫描) O(n)用两个指针从头开始扫描,第一个指针每次走一步,第二个指针每次走两步。如果走到 null,说明不存在环;否则如果两个指针相遇,则说明存在环。为什么呢?假设链表存在环,则当第一个指针走到环入口时,第二个指针已经走到环上的某个位置,距离环入口还差 x步。由于第二个指针每次比第一...转载 2019-02-18 18:46:59 · 133 阅读 · 0 评论