wuyijia

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

06 2023 档案

代码随想录算法训练营第二十八天|93. 复原 IP 地址,78. 子集,90. 子集 II
摘要:【参考链接】 93. 复原 IP 地址 【注意】 1.切割问题就可以使用回溯搜索法把所有可能性搜出来。 2.startIndex一定是需要的,因为不能重复分割,记录下一层递归分割的起始位置。 3.本题我们还需要一个变量pointNum,记录添加逗点的数量。 4.分割的段数作为终止条件。pointNu 阅读全文

posted @ 2023-06-06 14:10 小吴要努力 阅读(13) 评论(0) 推荐(0) 编辑

代码随想录算法训练营第二十七天|39. 组合总和,40. 组合总和 II,131. 分割回文串
摘要:【参考链接】 39. 组合总和 【注意】 1.candidates 中的数字可以无限制重复被选取。 2.在for循环中进行剪枝。剪枝前需要对数组进行排序。 【代码】 1 class Solution(object): 2 def __init__(self): 3 self.path = [] 4 阅读全文

posted @ 2023-06-05 11:52 小吴要努力 阅读(15) 评论(0) 推荐(0) 编辑

代码随想录算法训练营第二十五天|216. 组合总和 III、17. 电话号码的字母组合
摘要:【参考连接】 216. 组合总和 III 【注意】 1.组合不强调元素之间的顺序。 【代码】 1 class Solution(object): 2 def __init__(self): 3 self.res = [] 4 self.sum_now = 0 5 self.path = [] 6 d 阅读全文

posted @ 2023-06-04 14:08 小吴要努力 阅读(15) 评论(0) 推荐(0) 编辑

代码随想录算法训练营第二十四天|回溯算法理论知识,77. 组合
摘要:【参考链接】 1.属于纯暴力算法 2.能解决组合、切割、子集、排列(强调元素的顺序)、棋盘问题(n皇后,解数独)问题。 3.一般都可以抽象成一个n叉树问题。横方向是for(遍历集合元素,主体:处理节点,递归,回溯(撤销处理节点的情况)),纵方向是递归(一般没有返回值,终止条件是收集结果的时候)。 4 阅读全文

posted @ 2023-06-03 12:49 小吴要努力 阅读(13) 评论(0) 推荐(0) 编辑

代码随想录算法训练营第二十三天|669. 修剪二叉搜索树,108. 将有序数组转换为二叉搜索树,538. 把二叉搜索树转换为累加树
摘要:[参考链接] 669. 修剪二叉搜索树 需要递归修剪。 [代码] 1 # Definition for a binary tree node. 2 # class TreeNode(object): 3 # def __init__(self, val=0, left=None, right=Non 阅读全文

posted @ 2023-06-02 11:02 小吴要努力 阅读(5) 评论(0) 推荐(0) 编辑

代码随想录算法训练营第二十二天|235. 二叉搜索树的最近公共祖先,701. 二叉搜索树中的插入操作,450. 删除二叉搜索树中的节点
摘要:[参考链接] 235. 二叉搜索树的最近公共祖先 [注意] 1.因为是有序树,所以如果中间节点是 q 和 p 的公共祖先,那么中间节点的数组 一定是在[p, q]区间的。即中节点 > p && 中节点 < q 或者 中节点 > q && 中节点 < p。 2.那么只要从上到下去遍历,遇到 cur节点 阅读全文

posted @ 2023-06-01 19:20 小吴要努力 阅读(5) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示