绪论数据结构教程学习教案.ppt
上传人:王子****青蛙 上传时间:2024-09-13 格式:PPT 页数:34 大小:1.5MB 金币:10 举报 版权申诉
预览加载中,请您耐心等待几秒...

绪论数据结构教程学习教案.ppt

绪论数据结构教程学习教案.ppt

预览

免费试读已结束,剩余 24 页请下载文档后查看

10 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

本课程讲述的主要内容本课程将分别讲述数据结构的基本概念、线性表、栈和队列、串和数组、树形结构、图结构、查找、排序等内容。学习(xuéxí)本课程的基本方法上课认真听讲;仔细阅读教材中的大量例题,从而体会并最终掌握数据结构中的基本概念;认真上机实习,独立完成每个章节后面的练习题。第1章绪论(xùlùn)1.1数据结构的概念1.2算法描述(miáoshù)1.3算法分析1.1数据结构(shùjùjiéꞬòu)的概念表1-1特点:l每个学生的信息占据一行,所有学生的信息按学号顺序依次排列构成一张表格;l表中每个学生的信息依据学号的大小存在着一种前后关系,这就是我们所说的线性结构;l对它的操作通常是插入某个学生的信息,删除(shānchú)某个学生的信息,更新某个学生的信息,按条件检索某个学生的信息等等。应用举例2——输出n个对象的全排列输出n个对象的全排列可以使用下图1-1所示的形式描述。图1-13个对象(duìxiàng)的全排列过程特点:l在求解过程中,所处理的数据之间具有层次关系,这是我们(wǒmen)所说的树形结构;l对它的操作有:建立树形结构,输出最低层结点内容等等。应用举例3——制定教学计划在制定教学计划时,需要考虑各门课程的开设顺序。有些课程需要先导课程,有些课程则不需要,而有些课程又是其他课程的先导课程。比如,计算机专业课程的开设情况如下表1-2所示:表1-2课程先后关系(guānxì)的图形描形式:特点l课程之间的先后关系用图结构描述;l通过实施创建图结构,按要求将图结构中的顶点进行线性排序。结论(jiélùn)计算机的操作对象的关系更加复杂,操作形式不再是单纯的数值计算,而更多地是对这些具有一定关系的数据进行组织管理,我们将此称为非数值性处理。要使计算机能够更有效地进行这些非数值性处理,就必须弄清楚这些操作对象的特点,在计算机中的表示方式以及各个操作的具体实现手段。这些就是《数据结构》这门课程研究的主要内容。数据是对客观事物的符号表示(biǎoshì)。在计算机科学中其含义是指所有能够输入到计算机中并被计算机程序处理的符号集合。数据元素(DataElement)数据元素是组成数据的基本单位,是数据集合的个体,在计算机中通常(tōngcháng)作为一个整体进行考虑和处理。数据结构数据结构的内容可归纳为三个部分:逻辑结构、存储结构和运算集合。按某种逻辑关系组织起来的一批数据,按一定的映象方式把它存放(cúnfàng)在计算机的存储器中,并在这些数据上定义了一个运算的集合,就叫做数据结构。逻辑结构数据结构中所说的“关系”实际上是指数据元素之间的逻辑关系,又称此为逻辑结构。常见的逻辑结构有:线性结构、树形结构和图形结构,集合。四个基本逻辑(luójí)结构集合线性结构树形结构图存储结构(物理结构)是指数据结构在计算机存储器中的具体实现。与孤立的数据元素表示形式不同,数据结构中的数据元素不但要表示其本身的实际内容,还要表示清楚数据元素之间的逻辑结构。常见的存储结构顺序存储结构:逻辑上相邻(xiānɡlín)的元素存储在物理位置相邻(xiānɡlín)的存储单元中.通常借助于程序设计语言中的数组来实现.链式存储结构:逻辑上相邻(xiānɡlín)的元素不要求其物理位置相邻(xiānɡlín),元素间的相邻(xiānɡlín)关系借助于指示数据元素地址的指针来实现。数据结构(shùjùjiéꞬòu)1.2算法(suànfǎ)描述编写程序的基本过程l通过对问题进行详细地分析,抽象出相应的数学模型;l确定使用的数据结构,并在此基础上设计对此数据结构实施各种操作的算法;l选用某种语言(yǔyán)将算法转换成程序;l调试并运行这些程序。算法应该(yīnggāi)具有下列五个特性(1)有穷性:一个算法必须在执行有穷步之后结束。(2)确定性:算法中的每一步,必须有确切的含义,在他人理解时不会产生二义性。(3)可行性:算法中描述的每一步操作都可以通过已有的基本操作执行有限次实现。(4)输入:一个算法应该(yīnggāi)有零个或多个输入。(5)输出:一个算法应该(yīnggāi)有一个或多个输出。这里所说的输出是指与输入有某种特定关系的量。举例问题:按从小到大的顺序重新排列x,y,z三个数值的内容。算法:(1)输入x,y,z三个数值;(2)从三个数值中挑选出最小者并换到x中;(3)从y,z中挑选出较小者并换到y中;(4)输出排序(páixù)后的结果。1.2.2算法的描述算法描述分为以下4种:(1)框图(kuàngtú)算法描述(程序流程图,N-S流程图)(2)非形式算法描述(3)伪语言算法描述(4)高级语言