美文网首页
面试题 02.02. 返回倒数第 k 个节点

面试题 02.02. 返回倒数第 k 个节点

作者: minningl | 来源:发表于2022-01-22 00:54 被阅读0次

题目:
实现一种算法,找出单向链表中倒数第 k 个节点。返回该节点的值。

注意:本题相对原题稍作改动

示例:

输入: 1->2->3->4->5 和 k = 2
输出: 4

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/kth-node-from-end-of-list-lcci
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

Python代码:

# Definition for singly-linked list.
# class ListNode(object):
#     def __init__(self, x):
#         self.val = x
#         self.next = None

class Solution(object):
    def kthToLast(self, head, k):
        """
        :type head: ListNode
        :type k: int
        :rtype: int
        """
        left = 0
        right = 0

        dummp = ListNode(0)
        dummp.next = head
        pre = dummp

        for i in range(k):
            pre = pre.next

        while pre.next:
            pre = pre.next
            dummp = dummp.next

        return dummp.next.val
            

Python代码2:

# Definition for singly-linked list.
# class ListNode(object):
#     def __init__(self, x):
#         self.val = x
#         self.next = None

class Solution(object):
    def kthToLast(self, head, k):
        """
        :type head: ListNode
        :type k: int
        :rtype: int
        """
        dummp = head
        for i in range(k):
            head = head.next
        
        while head:
            head = head.next
            dummp = dummp.next
        return dummp.val

            

相关文章

网友评论

      本文标题:面试题 02.02. 返回倒数第 k 个节点

      本文链接:https://www.haomeiwen.com/subject/euxuhrtx.html