今天的题目是83. 删除排序链表中的重复元素
昨天学Django学的忘了做题,今天来补。
链表去重,是考察指针使用的基本操作,没有太多花样。
class Solution:
def deleteDuplicates(self, head: ListNode) -> ListNode:
# 新建一个操作位指针,初始指向head
cur = head
# 循环直到整个链表为空 或 尾部为空
while cur != None and cur.next != None:
# 如果链表当前节点 与 下一个节点值相同
if cur.val == cur.next.val:
# 当前节点的下一个节点 直接指向下下个节点
cur.next = cur.next.next
else:
# 如果不相等,则移动操作指针到下一个
cur = cur.next
# 返回操作后的链表
return head
Your runtime beats 50.94 % of python3 submissions
Your memory usage beats 12.75 % of python3 submissions (13.3 MB)
力扣每日一题:322. 零钱兑换
class Solution:
def coinChange(self, coins: List[int], amount: int) -> int:
dp = [float("inf")] * (amount + 1)
dp[0] = 0
for i in range(1, amount + 1):
dp[i] = min(dp[i - c] if i - c >= 0 else float("inf") for c in coins ) + 1
return dp[-1] if dp[-1] != float("inf") else -1
Your runtime beats 90.25 % of python3 submissions
Your memory usage beats 24.21 % of python3 submissions (13.4 MB)
动态规划我能说我不会吗。。。