题解 | #输出单向链表中倒数第k个结点#
输出单向链表中倒数第k个结点
https://www.nowcoder.com/practice/54404a78aec1435a81150f15f899417d
# 构造链表,用真正链表的做法处理. class ListNode: """ 构造链表 """ def __init__(self, val, next=None): self.val = val self.next = next def reverse_list_node(head): """ 翻转链表 """ cur = head pre = None while cur: nxt = cur.next cur.next = pre pre = cur cur = nxt return pre def get_k_node(head, k): """ 逆序输出链表 """ cur = reverse_list_node(head) for _ in range(k-1): cur = cur.next print(cur.val) if __name__ == "__main__": while True: try: length = int(input()) nums = list(map(int, input().split())) k = int(input()) head = ListNode(nums[0]) cur = head for num in nums[1:]: node = ListNode(num) cur.next = node cur = cur.next get_k_node(head, k) except: break