随笔分类 - 算法 / 回溯
摘要:332.重新安排行程 方法一和方法二在力扣用例会超时 方法一、 class Solution: def findItinerary(self, tickets: List[List[str]]) -> List[str]: tickets.sort() res = [] used = [False]
阅读全文
摘要:491.递增子序列 class Solution: def findSubsequences(self, nums: List[int]) -> List[List[int]]: res = [] self.tracebacking(nums, 0, [], res) return res def
阅读全文
摘要:93.复原IP地址 1、方法一 class Solution: def restoreIpAddresses(self, s: str) -> List[str]: res = [] self.tracebacking(s, 0, [], res) return res def tracebacki
阅读全文
摘要:39. 组合总和 class Solution: def combinationSum(self, candidates: List[int], target: int) -> List[List[int]]: res = [] candidates.sort() self.tracebacking
阅读全文
摘要:216.组合总和III class Solution: def combinationSum3(self, k: int, n: int) -> List[List[int]]: res = [] self.tracebacking(n, k, 1, 0, [], res) return res d
阅读全文
摘要:第77题. 组合 需要注意剪枝细节 纵向代表递归,横行代表取数 1、回溯 class Solution: def combine(self, n: int, k: int) -> List[List[int]]: res = [] self.backtrack(n, k, 1, [], res) r
阅读全文