
回溯算法
文章平均质量分 51
# 回溯算法
如旧呀
这个作者很懒,什么都没留下…
展开
-
回溯算法—n皇后
每一种解法包含一个不同的 n 皇后问题 的棋子放置方案,该方案中 'Q' 和 '.' 分别代表了皇后和空位。n 皇后问题 研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击。给你一个整数 n ,返回所有不同的 n 皇后问题 的解决方案。原创 2023-04-03 21:28:56 · 112 阅读 · 0 评论 -
回溯算法/动态规划-不同路径
一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。问总共有多少条不同的路径?解释: 从左上角开始,总共有 3 条路径可以到达右下角。原创 2023-04-04 11:43:02 · 329 阅读 · 0 评论 -
回溯算法-数独
一个数独的解法需遵循如下规则: 数字 1-9 在每一行只能出现一次。数字 1-9 在每一列只能出现一次。数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。空白格用 '.' 表示。编写一个程序,通过填充空格来解决数独问题。原创 2023-04-03 22:41:36 · 108 阅读 · 0 评论 -
回溯算法-全排列
给定一个 没有重复 数字的序列,返回其所有可能的全排列。原创 2023-04-02 21:22:18 · 124 阅读 · 0 评论 -
回溯算法-组合总和II
Code B中使用了一个数组vist来记录元素是否被访问过,用来去重。具体而言,在for循环中,每次都检查当前元素是否与前一个元素相同,如果相同,并且前一个元素没有被访问过,那么当前元素也直接跳过。Code A是在元素使用时标记,Code B是在元素访问时标记。Code B在代码实现上更简洁,同时也更为常见,因此在实际开发中更为常用。Code A中使用了一个数组used来记录已经使用的元素,用来去重。具体而言,在for循环中,每次都检查当前元素是否已经被标记使用过,如果是,直接跳过。原创 2023-04-02 21:57:10 · 159 阅读 · 0 评论