回溯算法
克里马查
这个作者很懒,什么都没留下…
展开
-
494. 目标和
算法题(程序员面试宝典)解题思路主要来源于leetcode官方与《程序员面试宝典》&labuladong494. 目标和给你一个整数数组 nums 和一个整数 target 。向数组中的每个整数前添加 ‘+’ 或 ‘-’ ,然后串联起所有整数,可以构造一个 表达式 :例如,nums = [2, 1] ,可以在 2 之前添加 ‘+’ ,在 1 之前添加 ‘-’ ,然后串联起来得到表达式 “+2-1” 。返回可以通过上述方法构造的、运算结果等于 target 的不同 表达式 的数目。示例原创 2021-07-25 21:22:28 · 150 阅读 · 0 评论 -
698. 划分为k个相等的子集
算法题(程序员面试宝典)解题思路主要来源于leetcode官方与《程序员面试宝典》&labuladong698. 划分为k个相等的子集给定一个整数数组 nums 和一个正整数 k,找出是否有可能把这个数组分成 k 个非空子集,其总和都相等。示例 1:输入: nums = [4, 3, 2, 3, 5, 2, 1], k = 4输出: True说明: 有可能将其分成 4 个子集(5),(1,4),(2,3),(2,3)等于总和。提示:1 <= k <= len(nums原创 2021-07-14 22:20:44 · 207 阅读 · 0 评论 -
22. 括号生成
算法题(程序员面试宝典)解题思路主要来源于leetcode官方与《程序员面试宝典》&labuladong22. 括号生成数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。示例 1:输入:n = 3输出:["((()))","(()())","(())()","()(())","()()()"]示例 2:输入:n = 1输出:["()"]提示:1 <= n <= 8解题方法解题思路1class Solution {原创 2021-07-14 17:21:25 · 177 阅读 · 1 评论 -
37. 解数独
算法题(程序员面试宝典)解题思路主要来源于leetcode官方与《程序员面试宝典》&labuladong37. 解数独编写一个程序,通过填充空格来解决数独问题。数独的解法需 遵循如下规则:数字 1-9 在每一行只能出现一次。数字 1-9 在每一列只能出现一次。数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。(请参考示例图)数独部分空格内已填入了数字,空白格用 ‘.’ 表示。示例:输入:board = [[“5”,“3”,".",".",“7”,".",".","原创 2021-07-13 16:40:20 · 92 阅读 · 0 评论 -
77. 组合
算法题(程序员面试宝典)解题思路主要来源于leetcode官方与《程序员面试宝典》&labuladong77. 组合给定两个整数 n 和 k,返回 1 … n 中所有可能的 k 个数的组合。示例:输入: n = 4, k = 2输出:[[2,4],[3,4],[2,3],[1,2],[1,3],[1,4],]解题方法解题思路1...原创 2021-07-13 16:38:16 · 66 阅读 · 0 评论 -
78. 子集
算法题(程序员面试宝典)解题思路主要来源于leetcode官方与《程序员面试宝典》&labuladong78. 子集给你一个整数数组 nums ,数组中的元素 互不相同 。返回该数组所有可能的子集(幂集)。解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。示例 1:输入:nums = [1,2,3]输出:[[],[1],[2],[1,2],[3],[1,3],[2,3],[1,2,3]]示例 2:输入:nums = [0]输出:[[],[0]]提示:1 <= n原创 2021-07-10 11:54:20 · 78 阅读 · 0 评论 -
51. N 皇后
算法题(程序员面试宝典)解题思路主要来源于leetcode官方与《程序员面试宝典》&labuladong51. N 皇后n 皇后问题 研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击。给你一个整数 n ,返回所有不同的 n 皇后问题 的解决方案。每一种解法包含一个不同的 n 皇后问题 的棋子放置方案,该方案中 ‘Q’ 和 ‘.’ 分别代表了皇后和空位。示例 1:输入:n = 4输出:[[".Q…","…Q",“Q…”,"…Q."],["…Q.",“原创 2021-06-07 19:40:04 · 66 阅读 · 0 评论 -
46. 全排列
算法题(程序员面试宝典)解题思路主要来源于leetcode官方与《程序员面试宝典》&labuladong46. 全排列给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 。你可以 按任意顺序 返回答案。示例 1:输入:nums = [1,2,3]输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]示例 2:输入:nums = [0,1]输出:[[0,1],[1,0]]示例 3:输入:nums = [1]输出:[原创 2021-06-06 12:32:58 · 90 阅读 · 0 评论