代码随想录学习笔记
主打理解算法代码,以及手撕力扣的每日练习
锐函数
脚踏实地
展开
-
【代码随想录】栈和队列2
stoll函数在C++中的含义是将转换为long long int类型。原创 2024-01-28 21:38:49 · 972 阅读 · 1 评论 -
【代码随想录】栈和队列1
InitStack(&S):初始化空栈StackEmpty(S):判断栈是否为空Push(&S, x):进栈,若栈未满,就将x加入成为新栈顶Pop(&S, &x):出栈,若栈非空,就弹出栈顶元素GetTop(S, &x):读取栈顶元素,若栈非空,就用x返回栈顶元素DestroyStack(&S):栈销毁,释放栈占用的存储空间。原创 2024-01-24 19:27:40 · 519 阅读 · 0 评论 -
【代码随想录】哈希表2
题目:编写一个算法来判断一个数 n 是不是快乐数。「快乐数」定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和,然后重复这个过程直到这个数变为 1,也可能是 无限循环 但始终变不到 1。如果 可以变为 1,那么这个数就是快乐数。如果 n 是快乐数就返回 True;不是,则返回 False。思路:不断的循环把平方和放入unordered_set里,直到平方和为1返回true或者set.find()!=set.end返回false。原创 2024-01-23 16:06:57 · 525 阅读 · 1 评论 -
【代码随想录】哈希表1
哈希的三种数据结构:数组、set(集合)、map(映射)总结一下,。原创 2024-01-21 21:51:12 · 430 阅读 · 0 评论 -
【代码随想录】移除链表元素
复习delete p,delete指针只是释放了那个指针原本所指的内存,并没有删除该指针。而在释放内存后,p会变成一个乱指的野指针,所以需要对p = nullptr;置空操作为什么不是NULL呢?查源代码发现#define NULL ((void *)0),也就是说NULL实际上是0,C++11加入了nullptr,可以保证在任何情况下都代表空指针,所以建议以后都用nullptr。原创 2024-01-19 17:01:46 · 405 阅读 · 1 评论 -
【代码随想录】链表1
链表其实只需要注意数据域和指针域就好,然后多使用临时指针保存需要的数据,但是要和循环的指针区分开。原创 2024-01-20 15:49:38 · 387 阅读 · 0 评论 -
【代码随想录】二分查找
由于left + right 在某种情况下可能会超过基本类型所能容纳的最大值,即1010变成0101,相当于/2。>>1 :二进制右移。原创 2024-01-16 15:48:19 · 473 阅读 · 0 评论 -
【代码随想录】双指针
以上是我搜索后转载的大佬发言,原文链接:https://blog.csdn.net/daiweijieshang/article/details/77934917。for循环中的判断条件第一次写的时候写的是fastIndex原创 2024-01-17 12:05:28 · 395 阅读 · 0 评论 -
【代码随想录】滑动窗口
滑动窗口的时间复杂度是O(n),因为每个元素只被操作了两次(放入窗口一次和拿出窗口一次)原创 2024-01-18 11:01:38 · 388 阅读 · 1 评论 -
【代码随想录】螺旋矩阵
3.找到循环不变量(也就是画出的每条边的长度,即区间长度)2.每条边的起始和结尾(区间应该是左开右闭)4.注意特殊的情况(单独给中间空格赋值)1.循环的条件和圈数。原创 2024-01-19 14:11:30 · 360 阅读 · 1 评论