剑指offer面试题22:链表的倒数第k个节点 java
2017-06-23 11:01
507 查看
题目描述
输入一个链表,输出该链表中倒数第k个结点。
思路
双指针法,一个指针先往前走k-1步,然后另外一个指针才开始走,当第一个指针走到尾部了,那么第二个指针正好指向了倒数第k个结点
输入一个链表,输出该链表中倒数第k个结点。
思路
双指针法,一个指针先往前走k-1步,然后另外一个指针才开始走,当第一个指针走到尾部了,那么第二个指针正好指向了倒数第k个结点
public class FindKthToTail { //输出该链表中倒数第k个结点 public static ListNode findKthToTail(ListNode head,int k){ if (head == null || k == 0){ return null; } ListNode pHead = head; //先让第一个指针走k-1步,但是要判断下一个节点是否为空 for (int i = 0;i < k-1;i++){ if (pHead.next != null){ pHead = pHead.next; }else { return null; } } ListNode pBehind = head; //第一个指针和第二个指针同时遍历,当第一个指针到尾节点时,正好是倒数第k个节点 while (pHead.next !=null){ pHead = pHead.next; pBehind = pBehind.next; } return pBehind; } }
相关文章推荐
- 剑指offer面试题22:链表中倒数第K个节点
- 剑指offer--面试题22:链表中倒数第k个节点
- 【剑指offer】面试题22:链表中的倒数第k个节点
- 剑指offer--面试题15:链表中倒数第K个结点--Java实现
- 剑指offer_面试题15_链表中倒数第k个节点(考虑问题要全面)
- 剑指Offer---面试题15:链表中的倒数第k个节点
- 剑指Offer:面试题15——链表中倒数第k个结点(java实现)
- 剑指Offer面试题15(Java版):链表中倒数第K个结点
- 剑指offer 面试题15 链表中的倒数第k个节点
- 剑指Offer面试题:14.链表的倒数第k个节点
- 剑指Offer-22:链表中倒数第k个节点
- 剑指offer 面试题15—链表中倒数第k个节点
- 剑指Offer 面试题22:链表中倒数第k个节点 Java代码实现
- [剑指offer]面试题15.链表中倒数第K个节点
- 剑指offer-面试题15.链表中倒数第k个结点
- 【剑指offer】3.4代码的鲁棒性——面试题15:链表中倒数第k个结点
- 剑指offer-面试题15:链表中倒数第K个结点
- 【剑指offer】链表倒数第k个节点
- 【剑指offer】之链表倒数第k个节点
- 剑指Offer-15-链表中的倒数第k个节点