自定义博客皮肤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)
  • 收藏
  • 关注

原创 代码随想录

注意:我的很多思路都会在代码中的注释中显示,因此要注意看代码,当然,前面的文章更会透漏我的思路。主要·是栈的一些应用和细节的处理。今天的内容比较简单,但是还是可以再进行一些优化。主要是栈的一些典型的特性吧,相邻,或者一一匹配的问题还是可以想到用栈的。

2023-07-23 21:37:12 136

原创 代码随想录

/ tt表示栈顶 int stk [ N ] , tt = 0;// 向栈顶插入一个数 stk [ ++ tt ] = x;// 从栈顶弹出一个数 tt --;// 栈顶的值 stk [ tt ];// 判断栈是否为空,如果 tt > 0,则表示不为空 if(tt > 0) {数组模拟队列// hh 表示队头,tt表示队尾(插入和删除都是++操作) int q [ N ] , hh = 0 , tt = - 1;// 向队尾插入一个数 q [ ++ tt ] = x;

2023-07-23 10:12:30 271

原创 代码随想录

本章节我一刷直接费了好哒的功夫。给完成了。KMP算法理论:kmp算法解决的是字符串匹配的问题。给一个文本串,咱给一个模式串,探索文本串中是否出现模式串。暴力解法:两侧for循环挨个去匹配。在这里我们需要用到一个很重要的表:前缀表,虽然后缀我们也同样会用到接下来我说一下自己的重磅思路首先,我们来看一下暴力算法。i <= n;} } }(加粗只是为了分隔行,看的更清晰一点)

2023-07-21 16:48:36 285 1

原创 代码随想录

今天要学习的内容是字符串哈希:求哈希时:将每一个前缀的哈希值记录下来。1. 把字符串看成P进制的数。2.进制的数转换成十进制。3.模Q。。。注意。不能映射成零,且可能冲突,但是这里我们假定Rp足够好,不需要考虑冲突的情况。P=131或者1331.Q=2的64次方。字符串哈希不允许冲突的存在,而前面的哈希就允许。我们可以利用前缀的哈希求得所有需要的字段的哈希。接下来是一个模板思路核心思想:将字符串看成P进制数,P的经验值是131或13331,取这两个值的冲突概率低。

2023-07-20 09:43:56 569 1

原创 代码随想录

上一节总结的哈希的添加函数和查找函数非常的重要。模板还是要回上一章多看一看,多背过一下。快乐数这一题表现的尤为突出。剩下三道题可以和A+B的结合到一起,运用双指针法。以上就是今天要讲的内容,哈希这一章就要告一段落了。再抄一下前言吧,感觉总结的也很到位:上一节总结的哈希的添加函数和查找函数非常的重要。模板还是要回上一章多看一看,多背过一下。快乐数这一题表现的尤为突出。剩下三道题可以和A+B的结合到一起,运用双指针法。

2023-07-18 17:08:55 680 1

原创 代码随想录

哈希表的一些基础理论知识需要先掌握:首先哈希表能解决什么问题呢?一般哈希表都是用来快速判断一个元素是否出现集合里。相比暴力算法的O(n)复杂度,运用哈希表只需要O(1)即可。运用哈希表需要我们将信息映射到哈希表上,这设计到了hash function,即哈希函数。,这个过程中,我们可以通过hashCode将数据信息转化为数值。但是哈希法也是牺牲了空间换取了时间,因为我们要使用额外的数组,set或者是map来存放数据,才能实现快速的查找。

2023-07-18 09:42:45 93 1

原创 代码随想录

今天的内容非常的丰富,可以认真的品味`这一次刷题的任务还是蛮多的,花费了较长的时间,其中第二道题目非常的基础实用,更需要注意自己的写题。接下来就好好消化一下吧。加油。

2023-07-15 19:54:44 122 1

原创 代码随想录

今天完成的是对数组内容部分的首尾。前两道题目吗仍然涉及到双指针算法,第三道题目则是运用到二维前缀和部分的相关知识。今天刷的题目总结了很多,不过很多还没有完全理解下来,还需要再巩固一下。还是有些力不从心,不过状态也好多了。

2023-07-13 22:28:39 390 1

原创 LeetCode算法刷题

本文将分享自己学习二分查找和移除元素的经验对于本题目,我们双指针一先一后,先指针fast用来记录新数组将要获得的元素,而后指针slow用来记录新数组元素将要存放的地址:思路:1.遍历,找出需要移除的元素位置。**替换:从数组的后面寻找元素替换。1)当前数组最后一个元素仍需要移除则更新数组元素后继续前移。2)当最后一个数组不需要移除,那就进行替换2.更新数组的长度,继续遍历以下是一个双指针的小模板。

2023-07-12 23:23:48 124 1

空空如也

空空如也

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

TA关注的人

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