分类
Growth | Study
6255-两个城市间路径的最小分数 6255-两个城市间路径的最小分数
6255. 两个城市间路径的最小分数 构建节点之间的关系 递归 递归函数的含义:把当前节点加入到已访问列表中,并通过和自己的所有邻居比较,更新全局最小值(一定不要跳进递归,相信这个函数能返回你需要的东西) 这个函数的变量:节点 得到递归结
2022-12-04
系统设计类题目 系统设计类题目
1396. 设计地铁系统 这类题目看似复杂,其实读懂后,根据题意要求一步一步分解并统计出需要的信息即可。 求平均时间,则需要知道startStation到endStation这段路中累计通过的人数和时间 checkOut中可以统计累计通过
2022-10-07
第三章:如何解决括号相关的题 第三章:如何解决括号相关的题
labuladong如何解决括号相关的问题 20. 有效的括号如果当前是左括号,则入栈如果当前是右括号,且栈不为空、栈顶是与其匹配的左括号,则出栈 class Solution(object): def isValid(self,
2022-10-04
71-简化路径 71-简化路径
简化路径 用/对字符串进行分隔 可以使用stringstream来分隔字符串,然后对每一段分别处理 继续讨论分隔后的元素。用一个向量保存有意义的子字符串 若为"" 或者.,则直接忽略,用continue直接跳过
2021-10-03
N叉树操作 N叉树操作
589. N 叉树的前序遍历 先操作根节点,再递归操作根节点的子节点 /* // Definition for a Node. class Node { public: int val; vector<Node*>
2021-10-03
二叉树的遍历 二叉树的遍历
前序、中序、后序、层序遍历 打包,讲解很棒! 只需要改变遍历的顺序即可 前序遍历class Solution(object): def preorderTraversal(self, root): """
2021-09-28
第一章:手把手带你刷二叉搜索树-第三期 第一章:手把手带你刷二叉搜索树-第三期
labuladong手把手带你刷二叉搜索树-第三期 96. 不同的二叉搜索树求1,2,…,n构成的二叉搜索树的数量,我们可以把1,2,…n分别作为根节点。 则对特定的根节点i,它的左子搜索树由1到i-1构成(能构建的左子搜索树种类有x种)
2021-09-27
第一章:手把手带你刷二叉搜索树-第二期 第一章:手把手带你刷二叉搜索树-第二期
labuladong手把手带你刷二叉搜索树-第二期 实现 Binary Search Tree (BST)的基础操作:判断 BST 的合法性、增、删、查。 98. 验证二叉搜索树方法1:利用携带的最大最小值进行判断 root 需要做的不只是
2021-09-27
第一章:手把手带你刷二叉搜索树-第一期 第一章:手把手带你刷二叉搜索树-第一期
labuladong手把手带你刷二叉搜索树-第一期 二叉树 二叉树算法设计的总路线:把当前节点要做的事做好,其他的交给递归框架,不用当前节点操心。 (可以理解成递归方法的应用) 明确递归结束的条件 (已经到了叶子节点) 把root该
2021-09-27
第一章:手把手带你刷二叉树-第三期 第一章:手把手带你刷二叉树-第三期
labuladong手把手带你刷二叉树(第三期) Q:怎么知道以自己为根节点的二叉树长什么样? A:可以通过后序遍历(根的左子树+根的右子树+根)得到自己的样子。如果某个子节点处为空,则用#进行填空 Q:怎么知道和别人长得是否一样?
2021-09-23
第零章:一个方法团灭LEETCODE股票买卖问题 第零章:一个方法团灭LEETCODE股票买卖问题
labuladong一个方法团灭LEETCODE股票买卖问题用的状态机,也就是三维的dp数组(天数,是否处于持有股票的状态(用0和1表示),已经交易的次数)。根据题意不断改变状态转移方程。本文采用二维数组,把是否持有股票的状态用不同的dp
2021-09-11
第零章:单链表的六大解题套路,你都见过么? 第零章:单链表的六大解题套路,你都见过么?
labuladong单链表的六大解题套路,你都见过么? 21. 合并两个有序链表方法1:迭代 逐个比较节点,不断向后移动,最后把未比较过的节点拼接到尾巴上 添加一个dummy节点便于操作 /** * Definition for sin
2021-09-09
1 / 8