数据结构与算法-严蔚敏清华大学C语言版

需积分: 10 3 下载量 167 浏览量 更新于2024-08-19 收藏 702KB PPT 举报
"顺序存储结构的算法-清华大学严蔚敏数据结构c语言完整ppt" 本文主要探讨了数据结构中的一个重要概念——顺序存储结构,并通过一个创建二叉树的C语言函数`CreateBiTree`来展示数据结构的具体实现。在计算机科学中,数据结构是组织和存储数据的方式,它直接影响到数据的处理效率。本资源特别提到了数据结构的逻辑结构和物理结构,以及它们之间的关系。 首先,我们来看一下什么是数据结构。数据结构是研究数据的组织方式,它包括数据的逻辑结构(如线性结构、树形结构、图结构等)和物理结构(如顺序存储、链式存储等)。在这个例子中,`CreateBiTree`函数用于创建一个二叉树的顺序存储结构。在二叉树中,每个节点最多有两个子节点,左子节点和右子节点。这个函数通过递归方式读取输入的字符,构建二叉树。 在数据结构中,二叉树是一种非常基础且重要的逻辑结构。在C语言中,通常使用结构体来表示二叉树节点,包含一个数据成员(`data`)和两个指向子节点的指针(`lchild`和`rchildd`)。`CreateBiTree`函数首先读取输入的字符,如果字符是')',则表示当前节点为空,否则,分配内存创建新节点,存储字符,然后递归创建左子树和右子树。 接着,我们讨论了基本概念和术语。数据(Data)是信息的载体,而数据结构是数据的组织形式。在计算机科学中,数据结构不仅包括数据的组织,还包括对这些结构定义的操作集合,这些操作应保持数据结构的性质不变。例如,对于二叉树,可能的操作包括插入节点、删除节点、查找节点等。 此外,算法是解决问题的步骤或指令集,它在数据结构的基础上执行操作。算法的效率是衡量其性能的重要指标,通常通过时间复杂性和空间复杂性来评估。在创建二叉树的算法`CreateBiTree`中,时间复杂性取决于输入的字符数量,而空间复杂性则由创建的二叉树的大小决定。 本资源提供了对数据结构基础知识的概述,特别是顺序存储结构和二叉树的创建,这是学习数据结构和算法的重要部分。理解和掌握数据结构和算法是编写高效程序的基础,对于计算机科学的学习和实践至关重要。