数据结构
解方法同样使用于 三角矩阵。 a11, a21,a22, a31,a32,a33, … … … am1,am2, am3,… ,amn m n 0 合肥工业大学 计算机与信息学院 7 数组-对角矩阵的压缩存储 对角矩阵 a11, a12 a21,a22, a23 a32,a33, a34 … … ann1 ,ann n n 0 0 a11 a12 a21 a33 ann a34 ann1 …
er)遍历:若树为空,执行空操作;否则依次执行: 中序遍历左子树 L; 访问根结点 D; 中序遍历右子树 R。 2. 先序 (PreOrder)遍历:若树为空,执行空操作;否则依次执行: 访问根结点 D; 先序遍历左子树 L; 先序遍历右子树 R。 3. 后序 (PostOrder)遍历:若树为空,执行空操作;否则依次执行: 后序遍历左子树 L; 后序遍历右子树
) 即索引顺序存取方法 , 是一种专为磁盘存取设计的文件组织方式。 由于磁盘是以盘组 、 柱面和磁道三级地址存取的设备 , 所以可以对磁盘上的数据文件建立盘组 、 柱面和磁道三级索引。 文件的记录在同一盘组上存放时 , 应先集中放在一个柱面上 , 然后再顺序存放在相邻柱面上;对同一柱面 , 则应按盘面的次序顺序存放。 ISAM文件结构举例 ISAM文件(续) 在一个磁盘组上的 ISAM文件
的数学模型; 确定使用的数据结构,并在此基础上设计对此数据结构实施各种操作的算法; 选用某种语言将算法转换成程序; 调试并运行这些程序。 算法应该具有下列五个特性 ( 1)有穷性:一个算法必须在执行有穷步之后结束。 ( 2)确定性:算法中的每一步,必须有确切的含义,在他人理解时不会产生二义性。 ( 3)可行性:算法中描述的每一步操作都可以通过已有的基本操作执行有限次实现。 (
——描述世界 ▪ 过 程随机, 结 果唯一 ——快速排序 ▪ 过 程、 结 果都随机 ——机器学 习 可行性 输 入 (0个或者多个) ▪ 无 输 入,算法本身已 经 确定了 输 入 输 出 (1个或者多个) ▪ 无 输 出的算法无意 义 算法的描述
方 )。 弧尾 ( Tail) 弧的起始点 ( Initial Node) 称为弧尾( 方向后方 )。 弧 〈 Vx, Vy〉 表示为 , 弧尾 弧头 Vx Vy 下一页 上一页 停止放映 [第 41页 /91] 顶点、邻接点 顶点 ( Vertex) 图中的数据元素 ( 结点 ) 称为顶点。 如图 G G2中的V V 2, 1, 2。 邻接点 ( Adjacent) 无向图中 ,若边 ( V
trightChild=createBinaryTree(LRV+k,LVR+k+1,nk1)。 A D C B E F G H I J //从后序的 LRV+k 开始,对中序的 k+1 到 n1 右子序列的 nk1 个元素建立右子树 return t。 }。 执行文件如下: 首先进行后序序列以及中序序列的输入,然后构建出二叉树,接着输出前序序列进行验证,看是否程序准确运行。 void
int length。 } DataList。 抽象数据类型 抽象数据类型:由用户定义,表示问题的数据模型 由其他数据类型组成,并包括一组相关操作 三大特征 信息隐藏、数据封装、使用与实现分离 22 class Circle { // 对象 : 几何圆 float r。 // 圆的半径 public: Circle(float r)。 // 构造函数,创建一个半径为 r的对象实例
示: // 默认响声、出错声、询问声、感叹声、消息声、扬声器默认响声 // 具体发声随系统“控制面板” “声音”中的设置不同而不同 void MsgBeep( int sndStyle ) { MessageBeep(sndStyle)。 } // SEOpenSysFolder函数:打开一个系统文件夹 // sysFolder == 1, 2, 3, 4 分别表示: // 我的电脑、网上邻居
义: 抽象数据类型 好的和坏的数据结构。 如果一个 DS可以通过某种 “ 线性规则 ” 被转化为线性的DS(例如线性表),则称它为 好的 DS。 好的 DS通常对应于好的(高效的)算法。 这是由计算机的计算能力决定的,因为计算机本质上只能存取逻辑连续的内存单元,因此如果没有线性化的结构逻辑上是不可计算的。 树是好的 DS—— 它有非常简单而高效的线性化规则,因此可以利用树设计出许多非常高效的算法