题目:输入一个链表,反转链表后,输出链表的所有元素 思路:使用三个指针遍历一遍链表 注意:代码的鲁棒性! ...
分类:
其他好文 时间:
2018-05-21 19:40:49
阅读次数:
135
输入一个链表,反转链表后,输出链表的所有元素。 思路,三个指针,current表示当前指针,pre前指针,后指针。通过各自复制,将current.next = pre后,各自向后移动直到链表为空,返回current即倒序后的头指针。 ...
分类:
其他好文 时间:
2018-05-20 20:40:14
阅读次数:
154
// 题目描述 // 输入一个链表,反转链表后,输出链表的所有元素。 public static class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; } ... ...
分类:
其他好文 时间:
2018-05-06 13:30:54
阅读次数:
156
用堆排序找出list中第K小的数字, 用小顶堆 python3 def min_heap_k(nums, topk): def siftdown(nums, e, begin, end): i = begin j = 2 i + 1 while j ...
分类:
编程语言 时间:
2018-05-02 21:11:28
阅读次数:
339
PAT 乙级 1025 给定一个常数 K 以及一个单链表 L,请编写程序将 L 中每 K 个结点反转。例如:给定 L 为 1 → 2 → 3 → 4 → 5 → 6,K 为 3,则输出应该为 3 → 2 → 1 → 6 → 5 → 4;如果 K 为 4,则输出应该为 4 → 3 → 2 → 1 → ...
分类:
其他好文 时间:
2018-05-01 15:54:41
阅读次数:
136
不会。 递归。有点慢,18ms。 来源:https://blog.csdn.net/geekmanong/article/details/51097196 9ms,来自:https://blog.csdn.net/NoMasp/article/details/50514593 快了一倍? 最快的。7 ...
分类:
其他好文 时间:
2018-04-29 01:12:48
阅读次数:
246
本篇延续上一篇剑指offer题目系列二,介绍《剑指offer》第二版中的四个题目:O(1)时间内删除链表结点、链表中倒数第k个结点、反转链表、合并两个排序的链表。同样,这些题目并非严格按照书中的顺序展示的,而是按自己学习的顺序,每个题目包含了分析和代码。 9、O(1)时间内删除链表结点 题目: 在O ...
分类:
其他好文 时间:
2018-04-24 21:43:30
阅读次数:
162
题目:输入一个链表,反转链表。 给定的结点结构: 我的想法是:用三个结点first,head,second分别来表示前一个结点,当前结点,和后一个结点。三个结点的初始状态:first为null,head为第一个结点,second为第二个结点,三个结点同步移动,每移动一次,便将head的next由原来 ...
分类:
其他好文 时间:
2018-04-18 21:19:43
阅读次数:
124
题目描述 输入一个链表,反转链表后,输出链表的所有元素。 代码思路 要反转链表即要把每个节点的next指针反转,考虑下面的链表: 1 -> 2 -> 3 -> 4 第一次反转时若把2的next指针直接指向1,则会出现下列情况: 1 <- 2 3 -> 4 接下来再往下便访问不到3于是无法完成反转。所 ...
分类:
其他好文 时间:
2018-04-07 21:10:41
阅读次数:
189
题目描述 输入一个链表,反转链表后,输出链表的所有元素。 思路 思路一: 迭代:将当前节点和下一节点保存起来,然后将当前节点反转。 思路二: 递归:利用递归走到链表的末端,然后再更新每一个节点的next值 ,实现链表的反转。 代码实现 java package LinkedList; / 反转链表 ...
分类:
其他好文 时间:
2018-03-31 15:51:57
阅读次数:
140