DFS
文章平均质量分 59
。。。
押切徹
这个作者很懒,什么都没留下…
展开
-
LeetCode 938. 二叉搜索树的范围和 easy/树,dfs
文章目录1.Description2.Example3.Solution1.我的一般思路2.不设置全局变量并且考虑到题目是二叉搜索树3.不使用递归,使用迭代/bfs1.Description给定二叉搜索树的根结点 root,返回值位于范围 [low, high] 之间的所有结点的值的和。2.Example输入:root = [10,5,15,3,7,null,18], low = 7, high = 15输出:323.Solution1.我的一般思路直接进行dfs,通过一个全局变量原创 2021-04-27 21:09:17 · 79 阅读 · 0 评论 -
LeetCode 90. 子集 II 回溯/medium
文章目录1.Description2.Example3.Solution1.Description给你一个整数数组 nums ,其中可能包含重复元素,请你返回该数组所有可能的子集(幂集)。解集 不能 包含重复的子集。返回的解集中,子集可以按 任意顺序 排列。2.Example输入:nums = [1,2,2]输出:[[],[1],[1,2],[1,2,2],[2],[2,2]]3.Solution使用回溯算法,注意递归时要判断下要添加的元素跟前边的一个元素是否相同,相同的话就跳过,应原创 2021-04-01 21:13:19 · 71 阅读 · 0 评论 -
LeetCode 341.扁平化嵌套列表迭代器 dfs,栈/ Medium
文章目录1.Description2.Example3.Solution1.在调用构造函数时就将重叠列表平铺开来2.构造时不展开,在调用hasnext方法时直接输出重叠列表中的数1.Description给你一个嵌套的整型列表。请你设计一个迭代器,使其能够遍历这个整型列表中的所有整数。列表中的每一项或者为一个整数,或者是另一个列表。其中列表的元素也可能是整数或是其他列表。2.Example输入: [[1,1],2,[1,1]]输出: [1,1,2,1,1]解释: 通过重复调用 next 直原创 2021-03-23 19:40:56 · 77 阅读 · 0 评论 -
LeetCode 46.Permutations(全排列) Backtracing\Medium
文章目录1.Description2.Example3.Solution1.我的题解(麻烦,时间复杂度高)2.回溯1.Description给定一个 没有重复 数字的序列,返回其所有可能的全排列。2.Example输入: [1,2,3]输出:[ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1]]3.Solution1.我的题解(麻烦,时间复杂度高)在31题思路的基础上加了一点,用contains判断是原创 2020-11-13 23:10:27 · 87 阅读 · 0 评论 -
LeetCode 37. Sudoku Solver(解数独) DFS/hard
文章目录1.Description2.Example3.Solution1.Description编写一个程序,通过填充空格来解决数独问题。一个数独的解法需遵循如下规则:数字 1-9 在每一行只能出现一次。数字 1-9 在每一列只能出现一次。数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。空白格用 ‘.’ 表示。2.ExampleInput: board = [["5","3",".",".","7",".",".",".","."],["6",".",".","1"原创 2021-02-03 23:27:35 · 71 阅读 · 0 评论 -
LeetCode 22. Generate Parentheses(括号生成) 回溯(DFS)/medium
文章目录1.Description2.Example3.Solution1.Description数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。2.Example输入:n = 3输出:["((()))","(()())","(())()","()(())","()()()"]输入:n = 1输出:["()"]3.Solution有两种写法:1.先一直添加括号,添加到不合适的时候再退回来。2.在添加前直接判断是否该添加、该添加哪边原创 2021-02-03 00:11:03 · 107 阅读 · 0 评论 -
LeetCode 17.Letter Combinations of a Phone Number(电话号码的字母组合) 回溯(DFS+剪枝)/medium
文章目录1.Description2.Example3.Solution1.Description给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。2.Example输入:digits = "23"输出:["ad","ae","af","bd","be","bf","cd","ce","cf"]输入:digits = ""输出:[]输入:digits = "2"输出原创 2021-02-01 22:03:46 · 71 阅读 · 0 评论