算法提高之LeetCode刷题数据结构和算法分析

返回倒数第 k 个节点

2020-02-28  本文已影响0人  _阿南_

题目:

实现一种算法,找出单向链表中倒数第 k 个节点。返回该节点的值。
注意:本题相对原题稍作改动
示例:
输入: 1->2->3->4->5 和 k = 2
输出: 4
说明:
给定的 k 保证是有效的。

题目的理解:

获取链表中所有的值保存早数组中,然后获取k位置的值。

python实现

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

class Solution:
    def kthToLast(self, head: ListNode, k: int) -> int:
        current = head
        values = list()

        while current is not None:
            values.append(current.val)

            current = current.next
        
        return values[-k]

提交

完成

做了那么多题目后感觉用到list,for, while就可以解决问题了。

// END 终于买到合格的口罩了,下午去拿。之前买的口罩质量真的是太差了啊。

上一篇下一篇

猜你喜欢

热点阅读