上一页 1 ··· 5 6 7 8 9 10 11 下一页

查找->静态查找表->分块查找(索引顺序表)

摘要: 文字描述 分块查找又称为索引顺序查找,是顺序查找的一种改进方法.在此查找算法中,除表本身外, 还需要建立一个”索引表”.索引表中包括两项内容:关键字项(其值为该字表内的最大关键字)和指针项(指示该子表的第一个记录在表中位置)。索引表按关键字有序,则表或者有序或者分块有序。所谓“分块有序”指的是第二个 阅读全文
posted @ 2018-08-21 18:14 LiveWithACat 阅读(2397) 评论(0) 推荐(0) 编辑

查找->静态查找表->次优查找(静态树表)

摘要: 文字描算 之前分析顺序查找和折半查找的算法性能都是在“等概率”的前提下进行的,但是如果有序表中各记录的查找概率不等呢?换句话说,概率不等的情况下,描述查找过程的判定树为何类二叉树,其查找性能最佳? 如果只考虑查找成功的情况,则使查找性能达最佳的判定树是其带权内路径长度之和PH值取最小的二叉树。 其中 阅读全文
posted @ 2018-08-15 18:20 LiveWithACat 阅读(1476) 评论(0) 推荐(1) 编辑

查找->静态查找表->折半查找(有序表)

摘要: 文字描述 以有序表表示静态查找表时,可用折半查找算法查找指定元素。 折半查找过程是以处于区间中间位置记录的关键字和给定值比较,若相等,则查找成功,若不等,则缩小范围,直至新的区间中间位置记录的关键字等于给定值或者查找区间的大小小于零时(表明查找不成功)为止。 示意图 算法分析 折半查找过程可以用一颗 阅读全文
posted @ 2018-08-15 18:12 LiveWithACat 阅读(1862) 评论(0) 推荐(0) 编辑

查找->静态查找表->顺序查找(顺序表)

摘要: 文字描述 顺序查找的查找过程为:从表中最后一个记录开始,逐个进行记录的关键字和给定值的比较,若某个记录的关键字和给定值比较相等,则查找成功,找到所查记录;反之,若直至第一个记录,其关键字和给定值比较都不等,则表明表中没有所查记录,查找不成功。 示意图 略 算法分析 从顺序查找的过程看,Ci取决于所查 阅读全文
posted @ 2018-08-13 18:11 LiveWithACat 阅读(1177) 评论(0) 推荐(0) 编辑

查找(总结篇)

摘要: 查找表 同一类型的数据元素(或记录)构成的集合。 关键字 数据元素(或记录)中某个数据项的值,用它可以标识(识别)一个数据元素(或记录)。 主关键字 可以唯一标识一个记录的关键字叫主关键字。 次关键字 非主关键字的关键字叫次关键字。 查找操作的性能分析 在之前的算法分析中,衡量一个算法好坏的量度有三 阅读全文
posted @ 2018-08-13 18:09 LiveWithACat 阅读(272) 评论(0) 推荐(0) 编辑

树和二叉树->其他(待完善)

摘要: 关于树和二叉树的部分,还有如下三个知识点,待以后时间更充裕的时候再回头完善。 1 树与等价问题 文字描述 关于等价关系和等价类的定义,在离散数学上的描述有点拗口, 其实在数据结构中,这部分相关的主要是如下三个函数: 示意图 算法分析: 代码实现 1 // 2 // Created by lady o 阅读全文
posted @ 2018-08-13 18:07 LiveWithACat 阅读(159) 评论(0) 推荐(0) 编辑

树和二叉树->最优二叉树

摘要: 文字描述 结点的路径长度 从树中一个结点到另一个结点之间的分支构成这两个结点之间的路径,路径上的分支数目称作路径长度。 树的路径长度 从树根到每一个结点的路径长度之和叫树的路径长度。 结点的带权路径长度 从该结点到树根之间的路径长度与结点上权的乘积 树的带权路径长度 所有叶子结点的带权路径长度之和 阅读全文
posted @ 2018-08-13 12:07 LiveWithACat 阅读(405) 评论(0) 推荐(0) 编辑

树和二叉树->线索二叉树

摘要: 文字描述 从二叉树的遍历可知,遍历二叉树的输出结果可看成一个线性队列,使得每个结点(除第一个和最后一个外)在这个线形队列中有且仅有一个前驱和一个后继。但是当采用二叉链表作为二叉树的存储结构时,只能得到结点的左孩子结点和右孩子结点,要想知道结点的前驱或后继,需要再遍历一次才知道。另外,叶子结点的左右孩 阅读全文
posted @ 2018-08-09 18:08 LiveWithACat 阅读(325) 评论(0) 推荐(0) 编辑

树和二叉树->遍历

摘要: 文字描述 二叉树的先根遍历 若二叉树为空,则空操纵,否则 (1) 访问根结点 (2) 先根遍历左子树 (3) 先根遍历右子树 二叉树的中根遍历 若二叉树为空,则空操纵,否则 (1) 中根遍历左子树 (2) 访问根结点 (3) 中根遍历右子树 二叉树的后根遍历 若二叉树为空,则空操纵,否则 (1) 后 阅读全文
posted @ 2018-08-07 18:49 LiveWithACat 阅读(300) 评论(0) 推荐(0) 编辑

树和二叉树->相互转化

摘要: 文字描述 由上篇关于树和二叉树的存储结构知,树和二叉树都可以采用二叉链表作为存储结构。也就是说,给定一颗树,可以找到惟一的一颗二叉树与之对应,从物理结构来看,它们的二叉链表是相同的,只是解释不同而已。 1 森林转换成二叉树 如果F = {T1, T2, …, Tm}是森林,需转换成一棵二叉树B={r 阅读全文
posted @ 2018-08-07 18:36 LiveWithACat 阅读(278) 评论(0) 推荐(0) 编辑
上一页 1 ··· 5 6 7 8 9 10 11 下一页