随笔- 57
文章- 0
评论- 2
阅读-
2957
06 2023 档案
代码随想录|打家劫舍问题
摘要:198.打家劫舍 213.打家劫舍II 337.打家劫舍III 198.打家劫舍 class Solution: def rob(self, nums: List[int]) -> int: n = len(nums) if n == 0: return 0 dp = [0 for _ in ran
阅读全文
代码随想录|完全背包
摘要:完全背包 ● 518. 零钱兑换 II ● 377. 组合总和 Ⅳ ● 70. 爬楼梯 (进阶) ● 322. 零钱兑换 ● 279.完全平方数 ● 139.单词拆分 ● 关于多重背包,你该了解这些! ● 背包问题总结篇! 完全背包 有N件物品和一个最多能背重量为W的背包。第i件物品的重量是weig
阅读全文
代码随想录|动态规划-01背包问题
摘要:二维和一维01背包 416. 分割等和子集 1049. 最后一块石头的重量 II 494. 目标和 474.一和零 01 背包 有n件物品和一个最多能背重量为w 的背包。第i件物品的重量是weight[i],得到的价值是value[i] 。每件物品只能用一次,求解将哪些物品装入背包里物品价值总和最大
阅读全文
代码随想录|动态规划
摘要:理论基础 509. 斐波那契数 70. 爬楼梯 746. 使用最小花费爬楼梯 62.不同路径 63. 不同路径 II 343. 整数拆分 96.不同的二叉搜索树 动态规划理论基础 动态规划,英文:Dynamic Programming,简称DP,如果某一问题有很多重叠子问题,使用动态规划是最有效的。
阅读全文
代码随想录|贪心(终章)
摘要:435. 无重叠区间 763.划分字母区间 56. 合并区间 738.单调递增的数字 968.监控二叉树 435. 无重叠区间 非常机智的算法 想要找到无重叠区间,想的是找到的是最合适留下来的区间 所以我们将按照区间的后段大小进行排序 将最在前的留下即可 真的非常机智 class Solution:
阅读全文
Google Cloud 的存储
摘要:为啥选择使用 Durable 耐用性 available scalable - distributed storage 可拓展性 inexpensive 为什么不把音视频直接放进DB中 可以用GCS 放DB比放入file system的速度慢 太大了 无法做数据库优化操作,比如说添加index GC
阅读全文
Google Cloud |Web开发
摘要:为啥选择使用 Durable 耐用性 available scalable - distributed storage 可拓展性 inexpensive 为什么不把音视频直接放进DB中 可以用GCS 放DB比放入file system的速度慢 太大了 无法做数据库优化操作,比如说添加index GC
阅读全文
代码随想录|贪心III
摘要:860.柠檬水找零 406.根据身高重建队列 452. 用最少数量的箭引爆气球 860.柠檬水找零 class Solution: def lemonadeChange(self, bills: List[int]) -> bool: n1 = 0 #number of 5 n2 = 0 #numb
阅读全文
代码随想录Day32|贪心II
摘要:今日任务 ● 122.买卖股票的最佳时机II ● 55. 跳跃游戏 ● 45.跳跃游戏II ● 1005.K次取反后最大化的数组和 ● 134. 加油站 ● 135. 分发糖果 122.买卖股票的最佳时机 II class Solution: def maxProfit(self, prices:
阅读全文
代码随想录Day30|贪心1
摘要:理论基础 ● 455.分发饼干 ● 376. 摆动序列 ● 53. 最大子序和 什么是贪心 贪心的本质是选择每一阶段的局部最优,从而达到全局最优。 这么说有点抽象,来举一个例子: 例如,有一堆钞票,你可以拿走十张,如果想达到最大的金额,你要怎么拿? 指定每次拿最大的,最终结果就是拿走最大数额的钱。
阅读全文
全栈开发知识点|那些authentication之类的名词
摘要:原文来自于:https://www.51cto.com/article/675946.html 此处进行进一步的记录 身份验证(Authentication):验证当前用户的身份,证明“你是你自己” 用户名密码登录 邮箱发送登录链接 手机号接收验证码 只要你能收到邮箱/验证码,就默认你是账号的主人
阅读全文
代码随想录|回溯算法(终回)
摘要:* 491.递增子序列 * 46.全排列 * 47.全排列 II 332.重新安排行程 51. N皇后 37. 解数独 总结 491.递增子序列 注意使用set来判断这一层是否有用过相同的数字,因为这题的数不是order的,所以不能和前者相对比 在python中的set使用add来增加 class
阅读全文
代码随想录Day24|回溯算法+JAVA大作战
摘要:今日任务 39. 组合总和 40.组合总和II 131.分割回文串 93.复原IP地址 78.子集 90.子集II 39. 组合总和 class Solution { List<List<Integer>> ans = new ArrayList<>(); LinkedList<Integer> n
阅读全文
代码随想录Day23|回溯算法
摘要:今日任务: 77. 组合 216.组合总和III 17.电话号码的字母组合 什么是回溯法 回溯法也可以叫做回溯搜索法,它是一种搜索的方式。 在二叉树系列中,我们已经不止一次,提到了回溯,例如二叉树:以为使用了递归,其实还隐藏着回溯 (opens new window)。 回溯是递归的副产品,只要有递
阅读全文
代码随想录|二叉树总结
摘要:涉及到二叉树的构造,无论普通二叉树还是二叉搜索树一定前序,都是先构造中节点。 求普通二叉树的属性,一般是后序,一般要通过递归函数的返回值做计算。 求二叉搜索树的属性,一定是中序了,要不白瞎了有序性了。
阅读全文
代码随想录|二叉树(最后一章)
摘要:530.二叉搜索树的最小绝对差 501.二叉搜索树中的众数 236. 二叉树的最近公共祖先 235. 二叉搜索树的最近公共祖先 701.二叉搜索树中的插入操作 450.删除二叉搜索树中的节点 669. 修剪二叉搜索树 108.将有序数组转换为二叉搜索树 538.把二叉搜索树转换为累加树 总结篇 53
阅读全文
代码随想录Day19|二叉树(六)
摘要:今日任务 654.最大二叉树 617.合并二叉树 700.二叉搜索树中的搜索 98.验证二叉搜索树 654.最大二叉树 当不确定一个新的解决方案是否正确的时候 请优先使用暴力解的方式 /** * Definition for a binary tree node. * public class Tr
阅读全文
代码随想录Day17|二叉树(五)
摘要:今日任务 513.找树左下角的值 112. 路径总和 113.路径总和ii 106.从中序与后序遍历序列构造二叉树 105.从前序与中序遍历序列构造二叉树 100.相同的树 572.另一个树的子树 513.找树左下角的值 层序遍历 /** * Definition for a binary tree
阅读全文
代码随想录day16| 二叉树(四)
摘要:110.平衡二叉树 递归法 /** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode() {} * TreeN
阅读全文
代码随想录Day15|二叉树III
摘要:104.二叉树的最大深度 递归法 本题可以使用前序(中左右),也可以使用后序遍历(左右中),使用前序求的就是深度,使用后序求的是高度。 二叉树节点的深度:指从根节点到该节点的最长简单路径边的条数或者节点数(取决于深度从0开始还是从1开始) 二叉树节点的高度:指从该节点到叶子节点的最长简单路径边的条数
阅读全文
代码随想录Day15|二叉树
摘要:二叉树层序遍历登场 层序遍历方式就是图论中的广度优先遍历,只不过我们应用在二叉树上。 果然看java还是很不爽,C++和python的代码简洁明了 public List<List<Integer>> resList = new ArrayList<List<Integer>>(); //DFS--
阅读全文
代码随想录Day14|二叉树
摘要:基本理论 https://programmercarl.com/二叉树理论基础.html#二叉树的种类 满二叉树:如果一棵二叉树只有度为0的结点和度为2的结点,并且度为0的结点在同一层上,则这棵二叉树为满二叉树。 完全二叉树:在完全二叉树中,除了最底层节点可能没填满外,其余每层节点数都达到最大值,并
阅读全文