剑指offer--链表中倒数第k个结点

原创 2017年04月23日 17:15:18

题目描述
输入一个链表,输出该链表中倒数第k个结点。


AC代码:

/*
public class ListNode {
    int val;
    ListNode next = null;

    ListNode(int val) {
        this.val = val;
    }
}*/
public class Solution {
    public ListNode FindKthToTail(ListNode head,int k) {
        ListNode p = head;
        int len = 0;
        if (k < 0) {  
             System.out.println("k不可以为负数");  
             return null;  
        }  

        if (head == null) {  
            System.out.println("单链表为空");  
            return null;
        }  

        while(p != null){
            len++;
            p = p.next;
        }

        if ( k > len){
            System.out.print("单链表太短");
            return null;
        }else{
            k = len - k ;
            while(k > 0){
                head = head.next;
                k--;
            }
            return head;
        }
    }
}
版权声明:本文为博主原创文章,未经博主允许不得转载。若需转载,请注明http://blog.csdn.net/qq_30091945 举报

相关文章推荐

剑指Offer----面试题15:链表中倒数第K个结点

题目: 输入一个链表,输出该链表中倒数第K个结点。为了符合大多数人的习惯,本题从1开始计数,即聊表的尾结点是倒数第一个结点。例如一个链表6个结点,从头结点开始它们的值依次是1、2、3、4、5、6。...

剑指offer 15. 链表中倒数第k个结点

class ListNode { int data; ListNode next; } // 题目:输入一个链表输出链表的倒数第k个结点 // 解法:设置两个标记,先让第一个走k步,接着让他们同...

我是如何成为一名python大咖的?

人生苦短,都说必须python,那么我分享下我是如何从小白成为Python资深开发者的吧。2014年我大学刚毕业..

链表中倒数第k个结点(剑指offer)

链表中倒数第k个结点 参与人数:1699时间限制:1秒空间限制:32768K通过比例:21.37%最佳记录:0 ms|8552K(来自  无声) 题目描述 输入一个链表,...

《剑指offer》——链表中倒数第k个结点

T: 题目描述 输入一个链表,输出该链表中倒数第k个结点. 这种考题是比较简单的一种,以前也碰到过类似的题目,从耗时来说,一般都是使用两个指针,一前一后的走,中间间隔k或者k-1个步长,这个...

剑指offer——输出链表倒数第K个结点

题目:i输入一个链表,输出链表的倒数第K个结点 本体考虑到链表的特殊性问题,如果按照一般思路思考,我们可以先将链表遍历到最后一个结点,然后再从前向后遍历找到倒数第k个结点。但是链表不允许从后向前进行...

[剑指offer学习心得]之:链表中倒数第k个结点

题目:输入一个链表,输出该链表中倒数第k 个结点.为了符合大多数人的习惯,本题从 1 开始计数,即链表的尾结点是倒数第 1 个结点.例如一个链表有 6 个结点,从头结点开始它们的值依次是 1 、2、3...

剑指Offer——(14)链表中倒数第k个结点

输入一个链表,输出该链表中倒数第k个结点。

剑指offer----链表中倒数第K个结点

输入一个链表,输出该链表中倒数第K个结点。从1开始计数,即该链表的尾节点是倒数第一个结点。 思路: 一、链表是单向链表,只能从头结点往后依次遍历,倒数第K个结点,也就是从头结点开始的n-(k-1)...

剑指offer 链表中倒数第k个结点

题目描述: 输入一个链表,输出该链表中倒数第k个结点。 (hint: 请务必使用链表。)思路: 单向链表,故不能倒着来,我们可以定义两个指针p1,p2,对于倒数第k个,我们先令p1走k步,然后两...
  • s_h_r
  • s_h_r
  • 2016-03-12 16:38
  • 129

剑指Offer:面试题15 链表中倒数第k个结点

/* 链表中倒数第k个节点: 输入一个链表,输出该链表中倒数第k个节点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是 倒数第一个节点。例如一个链表有6个节点,从头节点开始它们的值依次是1...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)