题解 | #输出单向链表中倒数第k个结点#

输出单向链表中倒数第k个结点

http://www.nowcoder.com/practice/54404a78aec1435a81150f15f899417d

我想的比较简单,不想思考指针问题,就是不知道是不是人家想要的了。

用ArrayList录入,然后找倒数k位也就是输出链表总长度-k位的那个值。又要求忘记长度,那么就重新遍历一次链表记录长度,再遍历一次找到链表倒数k位输出就行。

public static void main(String[] args){
    Scanner sc = new Scanner(System.in);
    while(sc.hasNext()){
        int num = sc.nextInt();
        List<Integer> l = new ArrayList<>();
        for(int i = 0 ; i<num ; i++){
            int tip = sc.nextInt();
            l.add(tip);
        }
        int k = sc.nextInt();
        //由于忘记了链表长度,所以从新计算链表长度即可。
        int len = 0;
        for(int i : l){
            len++;
        }
        System.out.println(l.get(len-k));
    }
}
全部评论

相关推荐

找不到工作死了算了:没事的,雨英,hr肯主动告知结果已经超越大部分hr了
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务