
C++
文章平均质量分 55
FangYwang
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【代码随想录37期】Day27 组合总和 40.组合总和II 131.分割回文串
【代码】【代码随想录37期】Day27 组合总和 40.组合总和II 131.分割回文串。原创 2024-06-04 01:32:04 · 456 阅读 · 0 评论 -
【代码随想录37期】Day25 组合总和III 、17.电话号码的字母组合
【代码】【代码随想录37期】Day25 组合总和III 、17.电话号码的字母组合。原创 2024-06-02 23:33:34 · 218 阅读 · 0 评论 -
【代码随想录37期】Day24 回溯 组合
回溯是一种搜索方式,通常通过穷举来解决问题,核心思想是从一个初始状态出发、暴力搜索所有可能的方案,遇到正确的解法则记录下来,直到结束,这是一个回溯:时间回溯!原创 2024-06-02 23:31:21 · 260 阅读 · 0 评论 -
【代码随想录37期】Day23 修剪二叉搜索树 108.将有序数组转换为二叉搜索树 538.把二叉搜索树转换为累加树
【代码】【代码随想录37期】Day23 修剪二叉搜索树 108.将有序数组转换为二叉搜索树 538.把二叉搜索树转换为累加树。原创 2024-06-02 23:28:47 · 184 阅读 · 0 评论 -
【代码随想录37期】Day22 二叉搜索树的最近公共祖先 701.二叉搜索树中的插入操作 450.删除二叉搜索树中的节点
【代码】【代码随想录37期】Day22 二叉搜索树的最近公共祖先 701.二叉搜索树中的插入操作 450.删除二叉搜索树中的节点。原创 2024-06-02 23:25:46 · 237 阅读 · 0 评论 -
【代码随想录37期】Day21 530.二叉搜索树的最小绝对差 、501.二叉搜索树中的众数 、236. 二叉树的最近公共祖先
【代码】【代码随想录37期】Day21 530.二叉搜索树的最小绝对差 、501.二叉搜索树中的众数 、236. 二叉树的最近公共祖先。原创 2024-06-02 23:21:22 · 147 阅读 · 0 评论 -
【代码随想录37期】Day20 最大二叉树、合并二叉树、二叉搜索树中的搜索、验证二叉搜索树
【代码】【代码随想录37期】Day19 最大二叉树、合并二叉树、二叉搜索树中的搜索、验证二叉搜索树。原创 2024-06-02 23:16:18 · 320 阅读 · 0 评论 -
【代码随想录37期】Day18 找树左下角的值、路径总和、从中序与后序遍历序列构造二叉树
【代码】【代码随想录37期】Day18 找树左下角的值、路径总和、从中序与后序遍历序列构造二叉树。原创 2024-05-27 01:36:58 · 352 阅读 · 0 评论 -
【代码随想录37期】Day17 平衡二叉树、二叉树的所有路径、左叶子之和
平衡二叉树int traversal(TreeNode* cur, int depth){ if (!cur) return depth; int left_depth = traversal(cur->left, depth + 1); int right_depth = traversal(cur->right, depth + 1); if (left_depth == -1 || right_depth == -1) r原创 2024-05-24 13:47:47 · 524 阅读 · 0 评论 -
【代码随想录37期】Day16 二叉树的最大深度、二叉树的最小深度、完全二叉树的节点个数
注意depth不好直接作为返回值,使用全局变量ret替代之。原创 2024-05-24 01:16:18 · 257 阅读 · 0 评论 -
【代码随想录37期】Day15 层序遍历、翻转二叉树、对称二叉树
代码随想录102. 二叉树的层序遍历 - 力扣(LeetCode)107. 二叉树的层序遍历 II - 力扣(LeetCode)199. 二叉树的右视图 - 力扣(LeetCode)637. 二叉树的层平均值 - 力扣(LeetCode)429. N 叉树的层序遍历 - 力扣(LeetCode)515. 在每个树行中找最大值 - 力扣(LeetCode)116. 填充每个节点的下一个右侧节点指针 - 力扣(LeetCode)104. 二叉树的最大深度 - 力扣(LeetCode)力扣(Lee原创 2024-05-22 13:49:24 · 325 阅读 · 0 评论 -
【代码随想录37期】Day14 二叉树的前序遍历、二叉树的中序遍历、二叉树的后序遍历
广度搜索:使用队列来实现,这也是队列先进先出的特点所决定的,因为需要先进先出的结构,才能一层一层的来遍历二叉树。,也就说前中后序遍历的逻辑其实都是可以借助栈使用递归的方式来实现的。原创 2024-05-21 13:42:46 · 557 阅读 · 0 评论 -
【代码随想录37期】Day13 滑动窗口最大值、前K个高频元素
若设二叉树的深度为h,除第 h 层外,其它各层 (1~h-1) 的结点数都达到最大个数,第 h 层所有的结点都连续集中在最左边,这就是完全二叉树。如果使用大顶堆,队列的特点是只能从队头出,那样最大的元素就会被弹出,我们需要的就是最大的K个元素,所以应该使用小顶堆把最小的元素弹出。我们在力扣写代码时,是在solution类里面,我们直接在这里面写的函数是该类的成员函数,非静态成员函数有一个。,因为优先级队列对外接口只是从队头取元素,从队尾添加元素,再无其他取元素的方式,使用容器适配器:队列。原创 2024-05-20 13:17:00 · 754 阅读 · 0 评论 -
【代码随想录37期】Day11 有效的括号、删除字符串中的所有相邻重复项、逆波兰表达式求值
3)遇到运算符“+”,将a和b出栈,执行a+b的操作,得到结果d=a+b,再将d入栈(0位置)两个元素弹出作相应运算,结果再入栈,最后当表达式扫描完后,栈里的就是结果。两个元素出栈,执行运算,得到的结果再入栈的原则来进行处理,那么ab+c。Notation,RPN,或逆波兰记法),也叫后缀表达式(将。经过以上运算,计算机就可以得到(a+b)*c的运算结果e了。,如果当前字符为变量或者为数字,则压栈,如果是运算符,则将。c的操作,得到结果e,再将e入栈(0位置)”,将d和c出栈,执行d。4)c入栈(1位置)原创 2024-05-19 19:40:58 · 477 阅读 · 0 评论 -
【代码随想录37期】第二周总结
resize是为了把后面冗余的部分去掉至于新的大小为什么是slow,看slow的循环即可,slow最后多一个slow++,数值上正好是size的大小(大小为slow的下标是0 ~ slow-1)原创 2024-05-19 19:38:18 · 832 阅读 · 0 评论 -
【代码随想录37期】Day10 用栈实现队列、用队列实现栈
v3.0:第三版代码,去掉了队列2的使用,将队列除了尾部元素之外重新入队,即可将原本的队尾元素移动到队首,从而去掉该元素。初版代码:根据自己思路实现的,确保pop时一个队列为空,然后将另一个队列的元素都移动到该队列,只留下最后一个元素。第二版代码,使用了q1 = q2;再清空q2的做法,避免了很多q1和q2来回交换的做法,明确了q1和q2的职责。原创 2024-05-17 13:06:40 · 360 阅读 · 0 评论 -
【代码随想录37期】Day08 反转字符串、反转字符串Ⅱ、替换数字、反转字符串里面的单词、右旋转字符串
下面的声明和初始化创建了一个 “Hello” 字符串。由于在数组的末尾存储了空字符,所以字符数组的大小比单词 “Hello” 的字符数多一个。字符串实际上是使用 null 字符 ‘\0’ 终止的一维字符数组。因此,一个以 null 结尾的字符串,包含了组成字符串的字符。使用整体反转+局部反转就可以实现反转单词顺序的目的。而使用局部反转+整体反转就可以实现反转字母顺序的目的。问题:1. erase与for循环嵌套时间复杂度高。注意的一点是reverse是左闭右开。原创 2024-05-15 22:00:24 · 528 阅读 · 0 评论 -
【代码随想录37期】Day07四数相加Ⅱ、赎金信、三数之和、四数之和
【代码】【代码随想录37期】Day07四数相加Ⅱ、赎金信、三数之和、四数之和。原创 2024-05-14 22:53:02 · 249 阅读 · 0 评论 -
【代码随想录37期】Day06 有效的字母异位词、两个数组的交集、快乐数、两数之和
【代码】【代码随想录37期】Day06 有效的字母异位词、两个数组的交集、快乐数、两数之和。原创 2024-05-13 14:06:19 · 272 阅读 · 0 评论 -
【代码随想录37期】 第一周总结
已知进入for循环时right<nums.size(),要满足sum >= target,left与right之间至少要有一个数,也就是nums[right],此时left<right<nums.size();原创 2024-05-12 19:51:53 · 975 阅读 · 0 评论 -
【代码随想录37期】Day04 两两交换链表中的节点、删除链表的倒数第N个节点、链表相交、环形链表II
注意使用虚拟头节点,可以避免对头节点的判断,防止各种复杂情况。原创 2024-05-11 21:56:58 · 265 阅读 · 0 评论 -
【虚函数表】通过打印虚指针vptr检查是否重写父类虚函数两种情况下子类与父类的虚函数表
vptr是类对象的第一个成员,x86是4字节,x64是8字节。原创 2023-12-09 23:48:11 · 150 阅读 · 0 评论 -
VisualStudio反汇编功能使用
VS2022反汇编功能使用:到达断点时:Ctrl+K(松开)+G(后按)唤出反汇编界面,就可以看到当前代码对应的汇编语言了原创 2023-12-08 21:13:39 · 2222 阅读 · 0 评论 -
git入门教程+常用命令
Git的来龙去脉:为什么要使用?什么情况下使用?git安装?gitee怎么用?常用命令有哪些?原创 2023-12-05 23:11:56 · 327 阅读 · 0 评论 -
C++智能指针及简单实现
根据智能指针的功能实现一个简单的智能指针类,并探讨智能指针的一些问题和思路原创 2023-12-05 22:12:44 · 434 阅读 · 0 评论