数据结构
LiverWhles
这个作者很懒,什么都没留下…
展开
-
数据结构复习 【7.3.1 树表的查找--二叉排序树】
数据结构复习 【7.3.1 树表的查找--二叉排序树】引言一、二叉排序树(二叉搜索树、查找树)1.定义2.性质3.查找操作3.1.相关代码3.1.1 二叉树排序树的存储结构3.1.2 递归查找算法3.2.效率分析4.插入操作5.生成操作6.删除操作6.1 删除叶子结点6.2 删除含有左子树(或右子树)的结点6.3 删除含有左、右子树的结点引言当表的插入和删除操作频繁时,为了维护表的有序性,我们需要移动表中的很多记录——可以改用动态查找表,使用几种特殊的树(二叉排序树、平衡二叉树、红黑树、B+、B-、键原创 2020-08-18 17:38:29 · 304 阅读 · 0 评论 -
数据结构复习 【7.2 线性表的查找】
总结自b站青岛大学王卓老师的讲课,感觉是最容易理解的数据结构课了!一、线性表的查找方法:(一)顺序查找1.应用范围:顺序表或线性链表表示的静态查找表表内元素之间可以无序2.数据元素定义、顺序表的表示:typedef struct{ KeyType key; //关键字域 …… //其他域}ElemType;typedef struct{ ElemType *R; //表基址 int length; //表长}SSTable; //Sequential Search Ta.原创 2020-08-18 16:12:46 · 1511 阅读 · 0 评论 -
数据结构复习 【7.1 查找的概念】
比较重要而有通用性的数据操作:查找和排序。一、查找的概念1.在哪里找?查找表。查找表是由同一类型的数据元素(或记录)构成的集合。由于“集合”中的数据元素之间存在着松散的关系(没有严格的前驱或后继),因此查找表是一种应用灵便的结构。2.什么是查找?根据给定的某个值,在查找表中确定一个其关键字等于给定值的数据元素(或记录)。(1)关键字:用来标识一个数据元素(或记录)的某个数据项的值。 1)主关键字:可唯一地标识一个记录。 2)次关键字:可表示若干记录。...原创 2020-08-18 16:08:16 · 276 阅读 · 0 评论 -
数据结构复习--KMP算法理解(如何消除主串回溯问题)
首先明确:KMP模式匹配算法的目的是:快速在主串中匹配到子串;KMP算法达到的效果是消除了主串指针的回溯,提高了字符串的匹配效率。一、BF匹配算法存在的问题既然KMP算法是一种优化算法,那肯定原算法有不足之处。BF算法是最基础的匹配算法,它的思想是:对于主串的每一个字符,当做子串的开头字符进行一次匹配,直到完全匹配成功。它的不足之处在于,当不完全匹配发生,再次进行匹配时可能出现主串指针回溯的现象,可以看下图的例子:规定主串为S[n],子串为T[n],则有:在①中,S[0]=T[0.原创 2020-07-21 14:55:13 · 1251 阅读 · 0 评论