题解 | #输出单向链表中倒数第k个结点#
输出单向链表中倒数第k个结点
https://www.nowcoder.com/practice/54404a78aec1435a81150f15f899417d
import sys class Node(object): def __init__(self, val=0): self.val = val self.next = None while 1: line = sys.stdin.readline().strip() if line == '': break arr = list(map(int, sys.stdin.readline().strip().split(' '))) k = int(sys.stdin.readline().strip()) # 正序构造链表 head = Node() p = q = head for a in arr: p = Node(a) q.next = p q = p # p q 指向头结点 p = q = head.next # q 向后移动k个结点 for i in range(k): q = q.next # p q 同时向后移动,直到q到链表尾,此时p指向倒数第k个结点 while q: p = p.next q = q.next print(p.val)