九、动态存储管理 1. 边界标识法 边界标识法是在动态存储块的上下边界各设一个双向链表结点,分别称其为头部域和底部域。 通过头部域和底部域的 t...
八、外部排序 前面第七章介绍了内部排序需要把待排序数据全部放入内存中,然后再排序。这就限制了待排序数据的规模。当数据量特别大时,程序的内存空间有...
七、排序算法 1. 插入排序 把数据分成两部分,前面是有序的(最初只有一个数据),依次将后面无序部分的数据插入到前面部分,逐渐扩大有序部分,直至...
六、查找 1. 静态查找表 静态查找表在查找过程中不改变表中数据——不插不删,故采用顺序存储结构。它适用于数据不变动或不常变动的表。根据静态查找...
五、图 图是比较复杂的数据结构,它由顶点和顶点之间的弧组成。任何两个顶点之间都可能存在弧,利用计算机存储图的完整信息,就要求能存储图的类型(有向...
四、树与二叉树 1. 二叉树的顺序存储结构 二叉树的顺序存储就是用数组存储二叉树。二叉树的每个结点在顺序存储中都有自己的固定位置。 这里要注意一...
三、字符串和矩阵 1. 字符串 1.1 字符串的按需(堆)存储结构 实现: HString 类中存储字符串的方式和 C++ 语言设置的存储字符串...
二、栈和队列 栈和队列都是线性结构,它们是操作受限的线性表,即它们的操作是线性表操作的子集。因此也可以用线性表在某种条件下的操作来完成栈和队列的...
一、线性表 线性表是一种抽象的数据类型,下面介绍几种具体的线性表存储结构(即物理结构):顺序、链式和静态链式。无论线性表采用哪种数据结构,她们的...
文集作者