LeetCode 51 N 皇后

按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。 n 皇后问题 研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击。 给你一个整数 n ,返回所有不同的 n 皇后问题 的解决方案。 每一种解法包含一个不同的 n 皇后问题 的棋子放置方案,该方案中 ‘Q’ 和 ‘.’ 分别代表了皇后和空位。 示例 1: 示例 2: 提示: 解题: 官方解答: 1.基于集合的回溯 2.基于位运算的回溯

Continue reading


LeetCode 49 字母异位词分组

给你一个字符串数组,请你将 字母异位词 组合在一起。可以按任意顺序返回结果列表。 字母异位词 是由重新排列源单词的字母得到的一个新单词,所有源单词中的字母通常恰好只用一次。 示例 1: 示例 2: 示例 3: 输入: strs = [“a”]输出: [[“a”]] 提示: 解题: 把每个单词里面的字母按顺序排列,然后用这个值作为map的键 官方解答: 1.排序 2.计数

Continue reading


LeetCode 45 跳跃游戏 II

给定一个长度为 n 的 0 索引整数数组 nums。初始位置为 nums[0]。 每个元素 nums[i] 表示从索引 i 向前跳转的最大长度。换句话说,如果你在 nums[i] 处,你可以跳转到任意 nums[i + j] 处: 返回到达 nums[n – 1] 的最小跳跃次数。生成的测试用例可以到达 nums[n – 1]。 示例 1: 示例 2: 提示: 解题: 官方解答: 1.反向查找出发位置 2.正向查找可到达的最大值

Continue reading


LeetCode 42 接雨水

给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。示例 1: 解释:上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高度图,在这种情况下,可以接 6 个单位的雨水(蓝色部分表示雨水)。 示例 2: 提示: 解题 选出中间两个最大的,然后求出中间的容量,然后再看两边的 官方解答 1.动态规划 2.单调栈 3.双指针

Continue reading