深度优先搜索
qiki_tang
不积硅步无以至千里,突破自己,糖没味儿加油!
展开
-
二维空间的单词搜素
leetcode 79. Word Search一、问题描述 给定一个2D板和一个单词,找出该单词是否存在于该2D网格中。这个搜索词可以由顺序相邻单元格的字母构成,其中“相邻”单元格是那些水平(左右)相邻或垂直(上下)相邻的单元格。 同一个字母单元格不能使用多次。二、解题思路典型的DFS题型终止条件(数据非法):走到给定范围边界之外 -- i<0||j>0||i>r...原创 2018-05-18 21:16:11 · 375 阅读 · 0 评论 -
机器人走网格--有障碍物
leetcode 63. Unique Paths II一、问题描述机器人位于一个m x n网格的左上角。机器人只能随时向下或向右移动。机器人正在尝试到达网格的右下角。假设网格中有障碍物,求有多少条独特的路径?ps:网格中的障碍物和空白区分别标记为1和0。【举例】输入:[ [0,0,0], [0,1,0], [0,0,0]]输出: 21. Right -> Right -> Do...原创 2018-07-07 11:53:19 · 2021 阅读 · 2 评论 -
机器人走网格---限定向下或向右走
leetcode:62. Unique Paths一、问题描述机器人位于一个m x n网格的左上角(在下图中标记为“开始”)。机器人只能随时向下或向右移动。 机器人正在尝试到达网格的右下角(在下图中标记为“完成”)。有多少可能的独特路径?m和n的值最多为100。【举例】<例子1>:输入: m = 3, n = 2输出: 3--解释:从3*2格子的左上角出发, 一共有三条路线到达右下角:...原创 2018-07-07 11:50:14 · 1963 阅读 · 0 评论 -
找到正整数序列中和为target值的组合
leetcode 39 Combination Sum && Combination Sum II一、问题描述给定一组数和一个目标值,找到数字中和为目标值的所有唯一组合。一个数字可以重复选择多次。注意:1、所有数字(包括目标)都是正整数。2、结果集不能包含重复的组合。【举例】例1:输入: candidates = [2,3,6,7], target = 7,输出解集:[ [7],...原创 2018-07-07 11:45:25 · 1153 阅读 · 0 评论 -
28-n皇后问题
leetcode52. N-Queens II一、问题描述n皇后拼图是将n个皇后放在n * n棋盘上的问题,使得没有两个皇后互相攻击--不能同行同列同斜线。【需求】给定一个整数n,返回n皇后拼图的所有不同的解决方案。每个解决方案都包含n皇后位置的独特摆放情况,其中'Q'和'.' 两者分别指示女王和空闲空间。【举例】输入: 4 ------------- 输出: 2[ [".Q..", //...原创 2018-05-14 11:14:05 · 253 阅读 · 0 评论 -
二叉树路径和--只记录和&记录路径
一、问题描述1、只记录和给定一棵二叉树和一个和,确定树是否有从根到叶的路径,使得沿路径加起来的所有值等于给定的总和。【示例】给定下面的二叉树 以及待求和 sum = 22, 5 / \ 4 8 / / \ 11 13 4 / \ \ 7 2 1返回 true, 因为存在一个从根到叶的路径...原创 2018-07-08 12:37:58 · 1216 阅读 · 0 评论 -
最长公共前缀
一、题目描述编写一个函数来查找字符串数组中最长的公共前缀字符串。如果没有共同的前缀,则返回一个空字符串“”。【示例】Input: ["flower","flow","flight"]Output: "fl"Input: ["dog","racecar","car"]Output: ""二、解题思路1、方法一:纵向比较 类深度优先,先遍历所有字符原创 2018-07-08 12:02:04 · 2011 阅读 · 1 评论 -
组合总和问题---一个数字可重复选择多次
leetcode 39. Combination Sum一、问题描述 给定一组数(数字没有重复)和一个目标值,找到数字中和为目标值的所有唯一组合。一个数字可以重复选择多次。 【注意】 所有数字(包括目标)都是正整数。 结果集不能包含重复的组合。【举例】例1:输入: candidates = [2,3,6,7], target = 7,输出解集:[ [7], ...原创 2018-05-15 20:39:48 · 2745 阅读 · 0 评论 -
纯数字字符串转ip地址
leetcode 93. Restore IP Addresses一、问题描述 给定一个只包含数字的字符串,通过返回所有可能的有效IP地址组合来恢复它。 【举例】 输入: "25525511135" 输出: ["255.255.11.135", "255.255.111.35"]二、解题思路 从头到尾遍历所有可能的ip组合,将组...原创 2018-05-15 20:31:40 · 2406 阅读 · 1 评论 -
成对括号的递归生成
leetcode 22. Generate Parentheses一、问题描述给定n对括号,编写一个函数来生成正确括号的所有组合。例如,给定n = 3,解决方案集合为:[ "((()))", "(()())", "(())()", "()(())", "()()()"]二、解题思路要求生成所有组合并输出,考虑用递归记录,递归执行条件为:1)先放左括号 -- 当前左括号数<n,则放..原创 2018-07-07 11:58:22 · 777 阅读 · 0 评论