
---------数据结构--------
Echo-Lee
尊重每一个参与你生命中的人。
展开
-
二叉搜索树(BST)
二叉搜索树 Binary Search Tree 也称二叉查找树或二叉排序树 性质 非空二叉搜索树的性质: 非空左子树的值都比根节点小(左小) 非空右子树的值都比根结点大(右大) 每一棵子树都是二叉搜索树 操作 插入: 除了普通的增加元素外,也是通过此操作建立整个二叉排序树 查找: 查找目标值 查找最大值 查找最小值 删除: 此操作相对其他操作更加复杂。 可以分为三种情况: 删除的是叶子结点:直接删除即可 删除的结点只有一颗子树:用儿子结点替换需要删除的结点 删除的结点有左右两颗子树:用左原创 2020-10-19 17:19:56 · 295 阅读 · 3 评论 -
深化对KMP算法的理解
KMP算法 文章目录KMP算法参考代码预处理模式串的理解入门题目 KMP一开始理解起来是比较困难的,下方是结合自己的理解写出来代码,仅作参考, (网上大部分人处理next数组时,对next数组整体移动一格了一格。但是我觉得不是特别好理解,所以我写的代码next数组并没有作移动)部分解释请参考注释。 参考代码 #include <iostream> #include <cstring> #include <algorithm> using namespace std; co原创 2020-10-16 19:48:32 · 215 阅读 · 0 评论 -
数据结构-堆(最大堆)
最大堆 #include <iostream> #include <cstdio> #include <algorithm> #define ERROR -1 const int MAXDATA = 1<<30; using namespace std; typedef int ElementType; typedef struct HeapStruct *MaxHeap; struct HeapStruct { ElementType *Elemen原创 2020-10-09 22:42:26 · 308 阅读 · 0 评论