链表
-琥珀川-
奋斗吧 骚年!
展开
-
两个链表的第一个公共结点
两个链表的第一个公共结点题目描述 输入两个链表,找出它们的第一个公共结点代码/* public class ListNode { int val; ListNode next = null;ListNode(int val) { this.val = val;}} */ public class Solution {public ListNode Find原创 2015-06-20 12:04:37 · 505 阅读 · 0 评论 -
[编程题]链表中环的入口结点
[编程题]链表中环的入口结点题目描述 一个链表中包含环,请找出该链表的环的入口结点。解题思路如何找到环的入口节点呢如果我们一直next next 显然由于出现了环会一直访问下去 显然我们需要解决环的问题 如果我们访问一个节点再把它删除掉呢?就是截断两个相邻节点的关系。next=null;所以我们需要两个箭头 一前一后 代码如下代码/* public class ListNode {原创 2015-06-19 21:27:30 · 737 阅读 · 0 评论 -
访问单个节点的删除
题目描述 实现一个算法,删除单向链表中间的某个结点,假定你只能访问该结点。 给定带删除的节点,请执行删除操作,若该节点为空节点,返回false,否则返回trueThinking实现链表的节点删除我们只需知道该节点的前节点然后修改该节点next的指向就可以了。然而根据题目要求我们并无法得知该节点的前节点。所以换一种思路我们只需将val值错位就可以了 只需将该节点的值换成下一结点的值然后删除原创 2015-07-09 09:47:39 · 649 阅读 · 0 评论 -
链表分割
题目描述 编写代码,以给定值x为基准将链表分割成两部分,所有小于x的结点排在大于或等于x的结点之前 给定一个链表的头指针 ListNode* pHead,请返回重新排列后的链表的头指针。Thinking 如图所示我们建立两个链表一个专门存放小于x的节点,另一个专门存放大于x的节点,访问原链表如果current节点大于x放到qe后面否则放在pe后面最后将两链表合并,返回ps引用即可。(如原创 2015-07-09 18:21:03 · 1312 阅读 · 0 评论 -
链表中倒数第k个结点
链表中倒数第k个结点题目描述 输入一个链表,输出该链表中倒数第k个结点。代码/*public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; }}*/public class Solution { public L原创 2015-06-15 21:03:38 · 523 阅读 · 0 评论