摘要: # 1 算法模板 ``` for 选择 in 选择列表: # 做选择 将该选择从选择列表移除 路径.add(选择) backtrack(路径, 选择列表) # 撤销选择 路径.remove(选择) 将该选择再加入选择列表 ``` # 2 代码示例 [46. 全排列](https://leetcode 阅读全文
posted @ 2023-06-08 20:33 柳叶昶 阅读(3) 评论(0) 推荐(0) 编辑
摘要: # 1 算法原理 **适用场景:利用preSum 数组,可以在O(1)的时间内快速求出nums任意区间[i,j]内的所有元素之和** **sum(i,j) = preSum(j + 1) - preSum[i]** ![](https://img2023.cnblogs.com/blog/21670 阅读全文
posted @ 2023-06-08 20:33 柳叶昶 阅读(16) 评论(0) 推荐(0) 编辑
摘要: # 1 算法模板 ``` void dfs(int[][] grid, int r, int c) { // 判断 base case // 如果坐标 (r, c) 超出了网格范围,直接返回 if (!inArea(grid, r, c)) { return; } // 访问上、下、左、右四个相邻结 阅读全文
posted @ 2023-06-08 17:13 柳叶昶 阅读(4) 评论(0) 推荐(0) 编辑