题解 | #输出单向链表中倒数第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));
    }
}
全部评论

相关推荐

不愿透露姓名的神秘牛友
07-09 12:23
转人工😡
门口唉提是地铁杀:五次握手了
点赞 评论 收藏
分享
想按时下班的大菠萝在...:隔壁学校的,加油多投, 实在不好找可以下个学期开学找,把算法八股准备好,项目有空再换换
投了多少份简历才上岸
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-09 13:05
TMD找工作本来就烦,这东西什么素质啊😡
Beeee0927:hr是超雄了,不过也是有道理的
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务