day25 | 回溯part2
板子是主循环啥也不干,只指明下标,dfs里面两种情况,选或不选。 216. 组合总和 III class Solution { public: vector<vector<int>> res; int n, k; vector<vector<int>> combinationSum3(int k_, …
day24 | 回溯
77. 组合 每个点选或不选 得到第一种写法,效率比较低 class Solution { public: // 1~n 选k个 int n, k; vector<vector<int>> res; vector<bool> b; vector<vector<int>> combine(i…
day23 | 二叉树结尾
669. 修剪二叉搜索树 如果节点的某一边不和条件,返回另一边 class Solution { public: // 如果<val 返回右边的 TreeNode* trimBST(TreeNode* root, int low, int high) { if (root == nullptr) return nullptr; if (roo…
MySQL数据库的开发
CentOS7安装MySQL + 创建表 本地版的MySQL用着用着就挂了,在星佬的帮助下整了个docker版的数据库。 直接把他的笔记贴到文章的最后面吧。 实话实说,有点折腾 先按照这个pdf把本地版的MySQL装好 然后能在命令行启动mysql了 centos yum安装mysql出现Public key for mysql-community…
day22 | 二叉树
235. 二叉搜索树的最近公共祖先 和昨天的一题很像,两种做法 1、dfs class Solution { public: // dfs版 TreeNode* lowestCommonAncestor(TreeNode* root, TreeNode* p, TreeNode* q) { if (root == nullptr || root =…
day21 | 二叉树
530. 二叉搜索树的最小绝对差 就中序遍历算了,简洁易懂 class Solution { public: vector<int> nums; // 比较的时候只用比较连着的 int getMinimumDifference(TreeNode* root) { dfs(root); int minn = nums[1] - nums[…
day17 | 二叉树part4
110平衡二叉树难度最大 剩下的两个就是朴素dfs 110. 平衡二叉树 不和条件返回-1。不然返回最大高度 class Solution { public: // 不和条件了就是-1 bool isBalanced(TreeNode* root) { return getHeight(root, 0) != -1; } int getHeight…
day16 | 二叉树part3
104. 二叉树的最大深度 class Solution { public: int maxn = 0; int maxDepth(TreeNode* root) { dfs(root, 0); return maxn; } void dfs(TreeNode* root, int depth) { if (root == nullptr) { m…