LeetCode - 92、反转链表 II

摘要: 反转从位置 m 到 n 的链表。请使用一趟扫描完成反转。 说明: 1 ≤ m ≤ n ≤ 链表长度。 示例: 输入: 1->2->3->4->5->NULL, m = 2, n = 4 输出: 1->4->3->2->5->NULL 解答: class Solution { public ListN 阅读全文
posted @ 2019-08-31 11:23 可乐加冰、 阅读(116) 评论(0) 推荐(0) 编辑

LeetCode - 206、反转链表

摘要: 反转一个单链表。 示例: 解法:头插法 1 class Solution { 2 public ListNode reverseList(ListNode head) { 3 //头插法反转列表 4 ListNode root = new ListNode(0); 5 ListNode next = 阅读全文
posted @ 2019-08-29 16:01 可乐加冰、 阅读(157) 评论(0) 推荐(0) 编辑

LeetCode - 86、分隔链表

摘要: 给定一个链表和一个特定值 x,对链表进行分隔,使得所有小于 x 的节点都在大于或等于 x 的节点之前。 你应当保留两个分区中每个节点的初始相对位置。 示例: 输入: head = 1->4->3->2->5->2, x = 3 输出: 1->2->2->4->3->5 解法: 1 class Sol 阅读全文
posted @ 2019-08-29 15:18 可乐加冰、 阅读(94) 评论(0) 推荐(0) 编辑

LeetCode - 82、删除排序链表中的重复元素 II

摘要: 给定一个排序链表,删除所有含有重复数字的节点,只保留原始链表中 没有重复出现 的数字。 示例 1: 输入: 1->2->3->3->4->4->5 输出: 1->2->5 示例 2: 输入: 1->1->1->2->3 输出: 2->3 解法: 1 class Solution { 2 public 阅读全文
posted @ 2019-08-29 14:08 可乐加冰、 阅读(125) 评论(0) 推荐(0) 编辑

LeetCode - 83、删除排序链表中的重复元素

摘要: 给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。 示例 1: 输入: 1->1->2 输出: 1->2 示例 2: 输入: 1->1->2->3->3 输出: 1->2->3 解法: 1 class Solution { 2 public ListNode deleteDuplicat 阅读全文
posted @ 2019-08-28 17:09 可乐加冰、 阅读(524) 评论(0) 推荐(0) 编辑

LeetCode - 61、旋转链表

摘要: 给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数。 示例 1: 输入: 1->2->3->4->5->NULL, k = 2 输出: 4->5->1->2->3->NULL解释: 向右旋转 1 步: 5->1->2->3->4->NULL 向右旋转 2 步: 4->5- 阅读全文
posted @ 2019-08-27 17:11 可乐加冰、 阅读(126) 评论(0) 推荐(0) 编辑

LeetCode - 24、两两交换链表中的节点

摘要: 给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。 示例: 给定 1->2->3->4, 你应该返回 2->1->4->3. 非递归解法: 1 class Solution { 2 public ListNode swapPair 阅读全文
posted @ 2019-08-27 16:05 可乐加冰、 阅读(182) 评论(0) 推荐(0) 编辑