
数据结构
FDk_LCL
我没有很好的运气,所以只能靠自己去拼搏!
展开
-
2020-11-08
B树和B+树是秋招中的一个热门话题,相关面试问题有很多,作为数据库的底层实现结构,我们很有必要对它进行了解,下面这篇博客很清晰的介绍了B数和B+树的结构以及应用场景。特此分享给大家。B树和B+树数据结构及使用场景...转载 2020-11-08 15:22:51 · 233 阅读 · 0 评论 -
KMP算法其实很简单
目录KMP算法产生原因前缀和后缀next数组求解过程KMP算法KMP算法产生原因朴素算法(BF)进行模式串匹配的思想为将模式串与主串进行字符比较,如果相等,那么模式串和主串中对应位置的指针均往后前进一步,如果模式串中所有的字符都匹配成功了,则表示主串中包含模式串,但如果在某一位置不等,则从主串的下一位置开始重新和模式串进行比较,如果指向主串的指针越界,咋表示匹配失败。BF算法其思想比较简单,实现过程也并不复杂,网上相关博客很多,这里不做赘述,如果读者不懂BF算法,可进行查阅分析。好了原创 2020-09-06 14:45:38 · 571 阅读 · 0 评论 -
数据结构-----二叉搜索树(binary search tree)
二叉搜索树简称为BST树,其主要特点为左孩子数据域的数值 <父结点数据域的数值 < 右孩子数据域的数值。如图所示即为一颗二叉排序树:通过示例可以看出,二叉搜索树实质上就是对于二叉树的推广,只是在普通的二叉树上做出特殊要求罢了。关于二叉树可以参考我的其他博文https://blog.youkuaiyun.com/FDk_LCL/article/details/89221363。下面将...原创 2019-05-28 17:04:24 · 336 阅读 · 0 评论 -
数据结构-----顺序栈 链式栈
目录栈顺序栈顺序栈实现链式栈链式栈实现栈 栈,是仅限定在表尾进行插入或删除操作的线性表。因此,对栈来说,表尾端有其特殊含义,称为栈顶(top),相应的,表头段称为栈底(bottom)。不含元素的空表称为空栈。 假设栈S = {a1,a2,a3,......an},则称a1为栈底元素,an为栈顶元素。栈中的元素按a1,a2,a3,......,...原创 2019-04-10 16:39:22 · 590 阅读 · 0 评论 -
数据结构-----循环队列 链式队列
目录队列的定义顺序队列循环队列循环队列的实现链式队列链式队列的实现队列的定义队列是一种只允许一端进行插入操作,一端只允许进行删除操作的线性表。 队列是一种先进先出(FIFO)的线性表,它只允许在表的一端进行插入和在表的另一端删除元素。在队列中,允许插入的一段叫做队尾(rear),允许删除的一端叫做队头(front)。假设队列为q = (a...原创 2019-04-02 13:05:59 · 2780 阅读 · 1 评论 -
数据结构-----单链表
目录单链表单链表实现单链表 单链表是一种链式存取的数据结构,用一组地址任意的存储单元存放线性表中的数据元素。因此,为了表示每个数据元素ai与其直接后继数据元素a(i+1)之间的逻辑关系,对数据元素ai来说,除了存储本身的信息之外,还需要存储一个指示其直接后继的信息(即直接后继的存储位置)。这两部分信息组成数据元素ai的存储映像,称为结点。结点包括两个域...原创 2019-04-04 15:21:51 · 533 阅读 · 0 评论 -
数据结构-----平衡二叉树(Balanced Binary Tree)
AVL树的定义及其特性:平衡二叉树(Balanced Binary Tree 或 Height-Balanced Tree)又称AVL树。它或者是一颗空树,或者是具有以下性质的二叉树:它的左子树和右子树都是平衡二叉树,且左子树和右子树的深度之差的绝对值不超过1; 该树上任意结点的平衡因子BF(Balance Factor)定义为该结点左子树的深度减去右子树的深度,则平衡因子只能取-1、0...原创 2019-09-23 13:48:06 · 784 阅读 · 0 评论