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

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

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

import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
         Scanner scanner = new Scanner(System.in);
        while(scanner.hasNext()) {
            int nodeNum = scanner.nextInt();
            ListNode tmp = null;
            ListNode head = null;
            for(int i = 0; i < nodeNum; i ++)
            {
                int val = scanner.nextInt();
                ListNode node = new ListNode(val,null);
                if(tmp != null)
                {
                    tmp.next = node;
                }
                if(head == null)
                {
                    head = node;
                }
                tmp = node;
            }
            int rightToLeftPos = scanner.nextInt();
            int leftToRightPos = nodeNum - rightToLeftPos + 1;
            tmp = head;
            int count = 1;
            while(tmp != null)
            {
               if(count == leftToRightPos)
               {
                   break;
               }else{
                   count ++;
                   tmp = tmp.next;
               }
            }
            System.out.println(tmp.val);
        }
    }
    static class ListNode{
        int val;
        ListNode next;
        ListNode(int val, ListNode next)
        {
            this.val = val;
            this.next = next;
        }
    }
}

全部评论

相关推荐

陌夏微秋:一线城市25w左右吧,17×15=255
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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