- 博客(7)
- 收藏
- 关注
原创 KMP辨析
KMP算法真是每一次看都会让我有新的认知,今早本想利用昨天晚上读的labuladong详解中的求一个next数组时,结果居然不一样。再次拜读后发现,两者不完全是一个东西,但是在许多教程中两者会被混为一谈,也有可能是因为大家对next数组都有各自的理解。最后总结了自己看到过的一些关于KMP算法的博客,发现有三个东西经常提到,一个next数组,另外两个是Partial Match Table(部分匹配表),前缀表。三者的最终结果有时是一样的,有时是不一样的,这是因为他们各自的侧重点有所不同。想要搞懂原理,还是得
2024-05-12 12:21:25
739
原创 栈的奥秘:生成第二个元素为2的所有可能序列
栈是一种后进先出(LIFO)的数据结构,可以通过两种基本操作来操作它:进栈(push)和出栈(pop)。这些操作使栈非常适合解决需要回溯和撤销的问题。
2024-05-11 23:57:58
552
1
原创 字符串(重点问题)
看完了代码随想录的字符串后应该会的几个问题:如何不分配额外一个数组将输入的字符串反转?如何将一个链表反转且不浪费内存空间?如何将字符串s中的前k/2个字符串翻反转?如何将混有数字的字符串中的数字全部替换成“number”并且时间复杂度O(n),空间复杂度O(1)字符串s由多个单词组成,单词之间的空格为1个及以上,如何在时间复杂度为O(n)时,移除多余的空格?类似于移除数组中值为val的元素双指针法可以用在什么方面?如何字符串右侧的k个字符移动到最前方(右旋)?
2024-05-11 21:45:50
253
1
原创 排序(重点笔记)
一种特殊的二叉树,大根堆是根节点比其左右子树上的结点都大的二叉树,反之反。从后往前看,叶子结点都符合定义故从第一个非叶子结点开始调整算法解释稳定性时间复杂度冒泡排序简单插入排序折半插入排序希尔排序归并排序快速排序选择排序堆排序基数排序。
2024-05-09 19:57:05
430
原创 树和二叉树(重点笔记)
树:表示不同层级,由一个根节点和若干子树构成,类似Linux系统目录,“/”就是根节点,之下有许多子树。二叉树:树中结点的孩子结点只有第1个,第2个,第3个的区别;而二叉树中的孩子结点的中带你是左,右之分⚠️满二叉树和完全二叉树的区别扩展二叉树:用于使一个遍历序列能够确定一棵二叉树。
2024-05-09 19:55:22
663
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人