
队列,堆,栈等数据结构的应用
文章平均质量分 79
利用数据结构的相关性质进行解题,体会到数据结构之美
sheep.ice
加油!
展开
-
模拟小根堆
本篇文章主要以小根堆为例子,做一些有关小根堆的知识点笔记,前面主要就是堆排序,后面呢是一个题目的相关介绍,由于那个题目的特殊性,所以不多加赘述,这一篇主要是以堆能够实现的一些操作为例子,记录一下堆的一些应用。本篇主要受众是已经建立在知道二叉树的建立的基础上,进行堆的记录。如果不太了解二叉树的uu们可以先去了解一下二叉树的建立,知道左右孩子的节点是怎么表示的,然后食用一下这篇文章。堆呢,其实原型就是一颗完全二叉树,我们知道,完全二叉树必须保证树儿子的完整性,即一个节点为x的父亲,如果他有孩子,那么他左右孩子的原创 2022-07-03 18:53:06 · 414 阅读 · 0 评论 -
模拟单链表
在很久之前的博客sheepice已经有过对于链表的相关介绍,而当时那篇文章的访问量也比较大,说明还是对大家有一定的帮助,那么这篇文章将继续对链表进行一个介绍,而本次所记录的是单链表的数组模拟,其实就是采用了一个虚表头的做法。为什么要用数组进行模拟呢,主要有以下几点:初始化的操作主要进行下面几点:②向头节点插入一个元素大家可以看一下上面的图,如果要在整个链表最左边插入一个值,我们只需要四步走③删除第k个节点后面的一个数这个操作其实比较的简单,我们只需要让第k个节点的next指针指向它下一个节点的下一个原创 2022-07-03 18:52:11 · 285 阅读 · 0 评论 -
KMP匹配字符串
这一章记录的是自己学习KMP算法的一个笔记吧。我觉得KMP虽然目前没有用到相关的算法,但是他的思想很妙,很多人在刚开始会非常不理解这个算法的由来。而我也是写了好几遍才能够真的说掌握了一些KMP算法。其实主要记住一点就是,KMP完成了字符串与本身进行比较的一个思路。所有字符串下标从1开始说真的我觉得相关一些数组的定义是整个这个算法的核心首先就是题目给的两个串,一个比较长的叫做模式串,另外一个叫做子串,题目的要求就是子串在模式串出现的位置或者出现的次数我们再看最难理解的一个ne数组的定义,最长子串的公共前后缀长原创 2022-07-03 18:48:28 · 143 阅读 · 0 评论 -
【leecode1705. 吃苹果的最大数目】贪心和二元优先队列
leecode每日一游原创 2021-12-24 18:21:53 · 920 阅读 · 1 评论