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

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

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

# 创建链表节点类
class NodeList(object):
    def __init__(self,value,next=None) -> None:
        self.value = value
        self.next = next
# 构建单向链表
def builtlinklist(nums):
    if not nums:
        return None
    head = NodeList(nums[0])
    current = head
    for i in range(1,len(nums)):
        current.next = NodeList(nums[i])
        current = current.next
    return head
# 利用快慢指针法寻找倒数K的节点
def getK(head,k):
    fast = slow = head
    for i in range(k):
        fast = fast.next
    while fast:
        fast = fast.next
        slow = slow.next
    return slow
while True:
    try:
        n = int(input())
        numbers = list(map(int,input().split()))
        k = int(input())
        head= builtlinklist(numbers)
        result = getK(head,k)
        print(result.value)
    except:
        break

#单向链表#
全部评论

相关推荐

湫湫湫不会java:写的很杂,连自己都不知道找什么工作的感觉,只是要份工作。针对自己稍微有点优势的方向好好整份简历投投吧,然后这杂的简历就辅助投投,因为自己认为的优势可能也不是很大的优势all in可能失业,自己也没有啥很想的方向还是可以用这通用的碰碰运气吧,加油
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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