输入一个链表,输出该链表中倒数第k个结点
2017-07-28 11:37
295 查看
思路:搞两个指针一个先走k-1步,然后两个一起走,如果先走的为空了,那么后走的所指向的就是我们要找的倒数第k个指针。
注意k,不能比链表长度大。
public class diK {
public ListNode FindKthToTail(ListNode head,int k) {
ListNode prenode=null;
prenode=head;
ListNode endnode=null;
endnode=head;
if(head==null||k<0)
return null;
else{
for(int i=1;i<=k;i++)
{
prenode=prenode.next;
}
while(prenode!=null)
{
prenode=prenode.next;
endnode=endnode.next;
}
return endnode;
}
}
}
注意k,不能比链表长度大。
public class diK {
public ListNode FindKthToTail(ListNode head,int k) {
ListNode prenode=null;
prenode=head;
ListNode endnode=null;
endnode=head;
if(head==null||k<0)
return null;
else{
for(int i=1;i<=k;i++)
{
prenode=prenode.next;
}
while(prenode!=null)
{
prenode=prenode.next;
endnode=endnode.next;
}
return endnode;
}
}
}
相关文章推荐
- 链表中倒数第k个结点 输入一个链表,输出该链表中倒数第k个结点。
- 输入一个链表,输出该链表中倒数第k个结点
- 微软100题13题(输入一个单向链表,输出该链表中倒数第k个结点。链表的倒数第0个结点为链表的尾指针)
- java 输入一个链表,输出该链表中倒数第k个结点。
- 面试题:输入一个单向链表,输出该链表中倒数第k个结点。链表的倒数第0个结点为链表的尾指针。
- 剑指offer:输入一个链表,输出该链表中倒数第k个结点。
- 输入一个单向链表,输出该链表中倒数第k个结点
- 输入一个单向链表,输出该链表中倒数第k个结点
- 剑指offer练习一 输入一个链表,输出该链表中倒数第k个结点。
- 13.输入一个链表,输出该链表中倒数第k个结点
- 输入一个单向链表,输出该链表中倒数第K个结点
- 13 输入一个单向链表,输出该链表中倒数第k个结点
- 输入一个单向链表,输出该链表中倒数第k个结点。链表的倒数第0个结点为链表 的尾指针
- 每天学习一算法系列(13) (输入一个单向链表,输出该链表中倒数第k个结点)
- 输入一个单向链表,输出该链表中倒数第K个结点
- 输入一个单向链表,输出该链表中倒数第K个结点
- 输入一个链表,输出该链表中倒数第k个结点。
- 用js实现输入一个链表,输出该链表中倒数第k个结点。
- 输入一个链表,输出该链表中倒数第k个结点。
- 剑指Offer 15 输入一个链表,输出该链表中倒数第k个结点