程式設計實踐筆記No.14
阿新 • • 發佈:2021-01-27
技術標籤:程式設計實踐
程式設計實踐筆記No.14
寫在最前面,程式設計一直是我的短板,希望在leetcode練習中獲得進步!
參考Datawhale組隊學習中“LeetCodeTencent”
題目一215 陣列中的第K個最大元素
編寫一個程式,找到兩個單鏈表相交的起始節點。
程式碼
class Solution:
def findKthLargest(self, nums: List[int], k: int) -> int :
b=sorted(nums,reverse=True)
return b[k-1]
題目二217 存在重複元素
給定一個整數陣列,判斷是否存在重複元素。
如果任何值在陣列中出現至少兩次,函式返回 true。如果陣列中每個元素都不相同,則返回 false。
程式碼
class Solution:
def containsDuplicate(self, nums: List[int]) -> bool:
b = {}
for num in nums:
if num not in b:
b[num] = 1
continue
b[num] += 1
if b[num]==2:
return True
return False
題目三 230 二叉搜尋樹中第K小的元素
給定一個二叉搜尋樹,編寫一個函式 kth Smallest 來查詢其中第 k 個最小的元素。
程式碼
class Solution:
def kthSmallest(self, root, k):
"""
:type root: TreeNode
:type k: int
:rtype: int
"""
def inorder(r):
return inorder(r.left) + [r.val] + inorder(r.right) if r else []
return inorder(root)[k - 1]