题解 | #输出单向链表中倒数第k个结点#
输出单向链表中倒数第k个结点
https://www.nowcoder.com/practice/54404a78aec1435a81150f15f899417d
import java.util.Scanner;
public class Main {
public static void main(String[] args) { // TODO Auto-generated method stub Scanner scan = new Scanner(System.in); while (scan.hasNext()) { int num = scan.nextInt(); ListNode[] arr = new ListNode[num]; for (int i = 0; i < num; i++) { ListNode node = new ListNode(scan.nextInt()); arr[i] = node; } int k = scan.nextInt(); for (int i = 0; i <= num - 2; i++) { arr[i].next = arr[i + 1]; } if (k > arr.length || k < 1) { System.out.println(0); } ListNode cur = arr[0]; int count = 0; int toGet = num - k; while (count < toGet) { cur = cur.next; count++; } System.out.println(cur.val); } }
}
class ListNode {
public ListNode(int val) { this.val = val; } int val; ListNode next;
}