知识大全 09年自考《数据结构》各章要点二[6]
Posted 知
篇首语:不操千曲而后晓声,观千剑而后识器。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 09年自考《数据结构》各章要点二[6]相关的知识,希望对你有一定的参考价值。
经过排序后这些具有相同关键字的记录之间的相对次序保持不变 则称这种排序方法是稳定的 否则排序算法是不稳定的
排序过程中不涉及数据的内 外存交换则称之为 内部排序 (内排序) 反之 若存在数据的内外存交换 则称之为外排序
内部排序方法可分五类 插入排序 选择排序 交换排序 归并排序和分配排序
评价排序算法好坏的标准主要有两条 执行时间和所需的辅助空间 另外算法的复杂程序也是要考虑的一个因素
插入排序
·直接插入排序
·逐个向前插入到合适位置
·哨兵(监视哨)有两个作用
·作为临变量存放R[i]
·是在查找循环中用来监视下标变量j是否越界
·直接插入排序是就地的稳定排序 时间复杂度为O(n^ ) 比较次数为(n+ )(n )/ ;移动次数为(n+ )(n )/
希尔排序
·等间隔的数据比较并按要求顺序排列 最后间隔为
·希尔排序是就地的不稳定排序 时间复杂度为O(n^ ) 比较次数为(n^ ) 移动次数为( n^ )
交换排序
cha138/Article/program/sjjg/201311/22727相关参考
冒泡排序 ·自下向上确定最轻的一个 ·自上向下确定最重的一个 ·自下向上确定最轻的一个后自上向下确定最重的一个 ·冒泡排序是就地的稳定排序时间复杂度为O(n^)比较次数为n(n)/;移动次
归并排序 ·先两个一组排序形成(n+)/组再将两组并一组直到剩下一组为止 ·归并排序是非就地稳定排序时间复杂度是O(nlogn) 分配排序 箱排序 ·按关键字的取值范围确定箱子数按关键字
构造最小生成树的算法 ·Prim算法的时间复杂度为O(n^)与边数无关适于稠密图 ·Kruskal算法的时间复杂度为O(lge)主要取决于边数较适合于稀疏图 最短路径的算法 ·Dijkst
顺序文件的插入删除和修改只能通过复制整个文件实现 索引文件的组织方式通常是在主文件之外建立一张索引表指明逻辑记录和物理记录之间一一对应的关系它和主文件一起构成索引文件 索引非顺序文件中的索引表
第九章查找 查找的同时对表做修改操作(如插入或删除)则相应的表称之为动态查找表否则称之为静态查找表 衡量查找算法效率优劣的标准是在查找过程中对关键字需要执行的平均比较次数(即平均查找长度ASL
散列技术将结点按其关键字的散列地址存储到散列表的过程称为散列 散列函数的选择有两条标准简单和均匀 常见的散列函数构的造方法 ·平方取中法hash=int((x^)%) ·除余法表长为mha
图的存储结构 ·邻接矩阵表示法用一个n阶方阵来表示图的结构是唯一的适合稠密图 ·无向图邻接矩阵是对称的 ·有向图行是出度列是入度 建立邻接矩阵算法的时间是O(n+n^+e)其时间复杂度为O
满二叉树是一棵深度为k结点数为(^k)的二叉树完全二叉树是满二叉树在最下层自右向左去处部分结点 二叉树的顺序存储结构就是把二叉树的所有结点按照层次顺序存储到连续的存储单元中(存储前先将其画成完全
第六章树 树是n个结点的有限集合非空时必须满足只有一个称为根的结点其余结点形成m个不相交的子集并称根的子树 根是开始结点结点的子树数称度度为的结点称叶子(终端结点)度不为的结点称分支结点(非终
树的前序遍历与相对应的二叉树的前序遍历一致;树的后序遍历与相对应的二叉树的中序遍历一致 树的带权路径长度是树中所有叶结点的带权路径长度之和树的带权路径长度最小的二叉树就称为最优二叉树(即哈夫曼树