自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 day18 二叉树pt2

思路上难点是vector<vector<int >>result 的创建作用 思考后可以理解为树是一个大vector 每一行都是一个小vector 在这里面都是插入队列 表示每行的元素 队列保证元素都是有序输出的。3)对称二叉树的递归法比较好理解 就是罗列出啥情况flase 啥情况是true 一 一返回就完成 子节点非空继续 是空就结束。这道题看完解析就是一道简单题 主要问题是只要抓住反转的是左右孩子 在用迭代法遍历 之前调用一个swap就可以解决。1)首先是层序遍历二叉树。

2024-05-04 22:20:41 137

原创 day 11 栈与队列pt2

整体思路为 先遍历字符串 遇到括号将他对应的结束括号放入栈中 继续遍历 依次比对 遇到符合的就直接弹出 有序且一 一对应;总结卡哥思路: 原理是靠括号的一 一对应性和有序性。后序s[i] 和con.top的比较 和栈的运用利用了这个解决问题。本质还是一 一对应 放进栈在核对成功的时候弹出 不再赘述;稍作变式 数字一但遍历到符号直接在最近的两个数运算 变成数字在入栈进行操作。一 一有序对应 且在字符串完结的时候栈空为true 其余皆为flase;1047)删除字符串中所有相邻的字符。

2024-04-27 21:11:16 191

原创 day10栈与队列(两题都比较基础 笔记简略一些)

还是大致总结一下思路:由于栈先进后出 队列先进后出 顺序不一样 要交换 将元素依次弹出在放入颠倒了顺序就可以正常取出满足题意。栈先进后出 一个口 队列有两个端口分别管理进出操作 所以用两个栈来用两个端口来实现实现队列的全部功能。pop函数:细节在先判断弹出函数是不是为空 其他没啥可说的 看完视频清晰明了。232)用栈来实现队列。225)用队列实现栈。只想到了双队列来实现。

2024-04-26 15:49:15 133

原创 day 8 字符串 344) 541) 卡码 54)151)

处理::用双指针方法快指针先遍历 在在遇到空格时 在用慢指针判断是否是第一个单词 以及用慢指针来增加空格区分单词 到此整个字符串反转并且区分开了每一个单词;1)识别单词 -- 识别单词就是靠的空格键隔开 识别单词有两种第一种是第一个单词 前面不需要空格来隔断;第二种是后续单词 先一个空格隔断再开始新的单词。2)接下来反转每个单词里的字符 反转为正确的单词顺序;遍历上用的i+=(2*k)思路没有问题 但是判断剩余值的情况思路上一开始想用取余的方式 来计算剩下字符数和size的大小关系来比对。

2024-04-24 17:35:35 129

原创 day6 哈希表 242

这道题学到更多的是如何看情况运用不同的哈希表,这道题既需要找到和符合目标的值也需要知道他的下标 二者成对出现 采用key-value的map不需要键位有序所以不用mulitplemap。2)在看到字符不一定一定只想到string数组也不一定要受限于转化为ASCII码值 和ascll值为0 的a取差值就可以转化为数值数组;主函数在sum==1的情况放在外面 原来第一次是错误以为sum==1是作为一种特殊情况单独列出 但是其实是while里面出循环的必要条件。在这里判断是否重复和349问题的处理方法相同;

2024-04-23 14:21:13 594

原创 第四天 链表p2 24(剩下后续补上 先跟上每日进度)

还是对c++语言不熟吧 这两个前者是新节点 后面的是指针 节点后面是可以接其他节点的而后面的只是指针只能指向 不能进行后续的连接;(之后每天都多写一题今天的题补上 跟上每天的进度重要一些)核心:两个存储 这个存储的中见变量 见到很多次了 不管是在删除原链表元素还是这块。最后一步返回头结点的那一步也可以视作是中间值储存要删掉的元素的一种应用。tips)头结点真的方便很多一定要进行这个知识点的掌握。其余的思考点就是在判断条件的先后顺续上的讲究防止报错。这里列举我两个易混淆的代码。

2024-04-21 23:27:57 117

原创 第三天 链表 203 707 206

4)tips:理解加深 cur —current 保护head不变的临时遍历指针 链表需要返回的就是链表的头指针。没有思路上的问题 但是在实现第一遍的时候没有想到头结点的特殊情况(刷题太少了不能一次就考虑到所有情况)2)思路卡壳在寻找指定下标没有想到用index--的形式一直想着把他作为参数传进来直接一步到位。1)设计虚拟头结点以及删除index节点 在上一个203)已经学会。3)非递归的一些赋值初始化工作可以放到递归传参的步骤里来实现。双指针)(没有太多思路完全没想到如何运用双指针);

2024-04-21 20:55:29 180

原创 4.18 leetcode 977,209,59

思路问题) 这里的双指针指的是原数组的头尾指针 reslut数组的k只是作为一个由有序数组特质所应用的一个放入参照位置。1))暴力解法在break的节点放置位置上出错 大致思路类似于最短路径 不断遍历寻找最优解。卡住的地方在于我想不到遍历的顺序怎么实现和头尾两端怎么移动格子;2))双指针直接看的解析总结:核心是动态移动开始位置 何时移动。1)))独立解题忽略了sum减去最开始的首个位置的值。2)209最小子数组(直接看解析的 完全没有思路)看完解析独立完成的时候出现的问题。1)977.有序数组的平方。

2024-04-20 11:18:39 414

原创 掌握二分法和快慢指针 力扣704 27

经过训练在原来已经掌握基本的研发基础上弥补了两种解法的差别处理欠缺 以及c++ >>移动符号的操作;总结二者影响在 while限制条件 以及 缩小范围二次定位边界值和middle的关系;卡壳点1)在num.size这个这个知识点卡住 没想到遍历的i限制条件。3)遗漏数组更新后角标--步骤(没有考虑到数组数值全往前移一位)代码细节错误:在用快指针赋值慢指针的时候 慢指针没有递增。2)在for更新数组的环节角标用错了。常见情况为左闭右闭 左闭右开。1.704 二分查找。2. 27 移除元素。

2024-04-18 18:36:50 449

空空如也

空空如也

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

TA关注的人

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