自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 【力扣刷题】单调栈

思路:构建单调递减栈,比栈顶小的压入等待后续求解;比栈顶大的计算距离返回答案。压入元素为栈的索引。

2024-09-11 17:19:17 443 1

原创 【刷题Day 27&29】回溯同层去重(待补充)

思路:遍历整棵树+同层去重。同层去重需要先排序,然后设置布尔数组和相邻两元素相同共同确定是同层/同枝。思路:输入数组无序。使用set针对同一父节点本层去重。思路:收集所有树的结点,即遍历整棵树,不需要剪枝。1 .去重即跳过不满足条件的值。

2024-03-06 11:32:47 407

原创 【刷题Day23】二叉树09

又被称为AVL(Adelson-Velsky and Landis)树,且具有以下性质:它是一棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树。

2024-02-28 15:23:09 447 1

原创 【刷题Day20】二叉树07

二叉搜索树(BST,Binary Search Tree),也称二叉排序树或二叉查找树。二叉搜索树:一棵二叉树,可以为空;如果不为空,满足以下性质:非空左子树的所有键值小于其根结点的键值。非空右子树的所有键值大于其根结点的键值。左、右子树都是二叉搜索树。

2024-02-25 18:45:56 409 1

原创 【刷题Day16】二叉树03 递归法应用

完全二叉树是除了最后一层其余层全满的二叉树,且最后一层节点全部集中在树的左边。若最底层位h层,则最后一层节点数在1~2^(h-1)之间。思路:后序遍历递归,将二叉树的左右子树遍历换成同层的节点遍历。思路:递归记录每个过程经过的节点,再返回给上一层函数。法1:递归法,采用后序遍历。法2:迭代法-层序遍历模板。加深了对递归三要素的理解。思路:考虑特殊条件递归。

2024-02-19 17:29:05 401 1

原创 【刷题Day15】二叉树-层序遍历(待补充)

是图论中的广度优先搜索在二叉树中的应用。具体来讲,使用队列暂存即将遍历的二叉树链表的节点指针地址,在pop出队列时对单一节点进行操作。

2024-02-19 00:07:46 386 1

原创 【刷题DAY 13】栈与队列03

C++中deque是stack和queue默认的底层实现容器。参考deque (double-ended queue 双端队列)为双向开口的连续线性空间,相比vetor在头端元素插入删除效率更高,但迭代器复杂度更高,通常情况下使用vectordeque双端插入和删除操作。

2024-02-16 21:15:47 406 1

原创 【待补充·补刷题Day 9】

一个字符串内包含首元素、不包含尾元素的所有字符串。

2024-02-05 00:12:34 398 1

原创 【Day 11】栈与队列02

1 .使用栈解决相邻元素匹配/消除/运算的问题。思路:先分析三种不合规律情况,再写代码。思路:相邻元素匹配消除问题用栈。思路:相邻元素匹配计算,采用栈。

2024-02-03 23:52:53 351 1

原创 【刷题DAY 10】

队列是先进先出,栈是先进后出,二者均为容器适配器(container adapter)

2024-02-03 00:17:01 381 1

原创 【刷题Day 8】

思路:拆解为去除空格、翻转字符串、翻转单词三部分写代码。其中翻转单词部分通过设置头尾进行。思路:需要固定规律一段一段去处理字符串的时候,考虑改变for循环的结构,不关键部分可以使用库函数。即这道题里不可以reverse(str.begin(), str.end());1 . 处理字符串相关的题可以适当调用swap、reverse等库函数。2. 遇到字符串翻转/反转/头尾互换,优先考虑reverse串并联。思路:在不关键的步骤可以调用库函数,但是关键步骤不能用库函数。思路:整体翻转+部分翻转。

2024-01-31 23:43:42 406

原创 【刷题Day7】

思路:由于题目要求加和元组可重复,将四个数组拆解成两组遍历。先遍历其中一组创建map,key为和,value为该和出现的次数。再遍历第二组,判断map中的加和跟第二组是否有满足条件的值,若有,对计数器进行增加。法1:O(n^4)暴力解法,超时法2:O(n^2)

2024-01-30 22:32:28 379 1

原创 【刷题Day 6】

set/multiset容器简介:所有元素都会在插入时被自动排序本质:关联式容器,底层结构采用,查询/增删效率均为O(log n)。区别:set不允许容器中元素重复,multiset允许。

2024-01-30 00:16:53 423 1

原创 【刷题Day3】

链表题考虑设置虚拟头节点解决问题耦合使用 delete temp;防止野指针问题。

2024-01-29 00:57:11 382

原创 【刷题Day2】

思路:由于输入输出均为非递减数列,可以采用从两端开始的双指针。

2024-01-25 23:22:11 417

原创 【刷题Day1】704、27

1 .二分法应该先做定义二分的区间(左开右闭/左闭右开),然后再写代码,思路会更清楚2. 二分法还得刷。

2024-01-24 21:57:06 353 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除