数据结构(C语言.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《数据结构(C语言.ppt》由会员分享,可在线阅读,更多相关《数据结构(C语言.ppt(41页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 数据结构(C语言描述)主讲教师:杨运伟电话:13476804237Email:前前 言言 二十一世纪是科学技术高速发展的信息时代,而计算机是处理信息的主要工具,因此,人们已经认识到,计算机知识已成为人类当代文化的一个重要组成部分。计算机科学技术以惊人的速度向前发展,它的广泛应用已从传统的数值计算领域发展到各种非数值计算领域。在非数值计算领域里,数据处理的对象已从简单的数值发展到一般的符号,进而发展到具有一定结构的数据。在这里,面临的主要问题是:针对每一种新的应用领域的处理对象,如何选择合适的数据表示(构构),如何有效地组织计算机存贮,并在此基础上又如何有效地实现对象之间的“运算”关系。传统的
2、解决数值计算的许多理论、方法和技术已不能满足解决非数值计算问题的需要,必须进行新的探索。数据结构就是研究和解决这些问题的重要基础理论。因此,“数据结构”课程已成为计算机类专业的一门重要专业基础课。数据结构是程序设计的中级课程,主要培养学生分析数据、组织数据的能力,告诉学生如何编写效率高、结构好的程序。本书作为计算机大专系列教材之一,在内容的选取、概念的引入、文字的叙述以及例题和习题的选择等方面,都力求遵循面向应用、逻辑结构简明合理、由浅入深、深入浅出、循序渐进、便于自学的原则,突出其实用性与应用性。全书共分十章。书中,安排了相当的篇幅来介绍这些基本数据结构的实际应用。进入章节1 引 言 2 数
3、据结构的发展简史及其在计算机科学中所处的地位 3 什么是数据结构 4 基本概念和术语 5 算法和算法的描述 第一章第一章 绪论绪论 本章介绍了数据结构这门学科诞生的背景、发展历史以及在计算机科学中所处的地位,重点介绍了数据结构有关的概念和术语,读者学习本章后应能掌握数据、数据元素、逻辑结构、存储结构、数据处理、数据结构、算法设计等基本概念,并了解如何评价一个算法的好坏。1.1 引言 众所周知,二十世纪四十年代,电子数字计算机问世的直接原因是解决弹道学的计算问题。早期,电子计算机的应用范围,几乎只局限于科学和工程的计算,其处理的对象是纯数值性的信息,通常,人们把这类问题称为数值计算。近三十年来,
4、电子计算机的发展异常迅猛,这不仅表现在计算机本身运算速度不断提高、信息存储量日益扩大、价格逐步下降,更重要的是计算机广泛地应用于情报检索、企业管理、系统工程等方面,已远远超出了科技计算的范围,而渗透到人类社会活动的一切领域。与此相应,计算机的处理对象也从简单的纯数值性信息发展到非数值性的和具有一定结构的信息。因此,再把电子数字计算机简单地看作是进行数值计算的工具,把数据仅理解为纯数值性的信息,就显得太狭隘了。现代计算机科学的观点,是把计算机程序处理的一切数值的、非数值的信息,乃至程序统称为数据(Data),而电子计算机则是加工处理数据(信息)的工具。由于数据的表示方法和组织形式直接关系到程序对
5、数据的处理效率,而系统程序和许多应用程序的规模很大,结构相当复杂,处理对象又多为非数值性数据。因此,单凭程序设计人员的经验和技巧已难以设计出效率高、可靠性强的程序。于是,就要求人们对计算机程序加工的对象进行系统的研究,即研究数据的特性以及数据之间存在的关系数据结构(Date Structure)。1.2 数据结构的发展简史及其在计算机科学中所处的地位发展史:1、“数据结构”作为一门独立的课程在国外是从1968年才开始设立的。2、1968年美国唐欧克努特教授开创了数据结构的最初体系,他所著的计算机程序设计技巧第一卷基本算法是第一本较系统地阐述数据的逻辑结构和存储结构及其操作的著作。地位:1.“数
6、据结构”在计算机科学中是一门综合性的专业基础课。2.数据结构是介于数学、计算机硬件和计算机软件三者之间的一门核心课程。3.数据结构这一门课的内容不仅是一般程序设计(特别是非数值性程序设计)的基础,而且是设计和实现编译程序、操作系统、数据库系统及其他系统程序的重要基础。1.3 什么是数据结构计算机解决一个具体问题时,大致需要经过下列几个步骤:首先要从具体问题中抽象出一个适当的数学模型,然后设计一个解此数学模型的算法(Algorithm),最后编出程序、进行测试、调整直至得到最终解答。寻求数学模型的实质是分析问题,从中提取操作的对象,并找出这些操作对象之间含有的关系,然后用数学的语言加以描述。计算
7、机算法与数据的结构密切相关,算法无不依附于具体的数据结构,数据结构直接关系到算法的选择和效率。运算是由计算机来完成,这就要设计相应的插入、删除和修改的算法。也就是说,数据结构还需要给出每种结构类型所定义的各种运算的算法。直观定义:数据结构是研究程序设计中计算机操作的对象以及它们之间的关系和运算的一门学科。1.4 基本概念和术语 1数据 数据是人们利用文字符号、数字符号以及其他规定的符号对现实世界的事物及其活动所做的描述。在计算机科学中,数据的含义非常广泛,我们把一切能够输入到计算机中并被计算机程序处理的信息,包括文字、表格、图象等,都称为数据。例如,一个个人书库管理程序所要处理的数据可能是一张
8、如表1-1所示的表格。表 1-1 个人书库2结点结点也叫数据元素,它是组成数据的基本单位。在程序中通常把结点作为一个整体进行考虑和处理。例如,在表1-1所示的个人书库中,为了便于处理,把其中的每一行(代表一本书)作为一个基本单位来考虑,故该数据由10个结点构成。一般情况下,一个结点中含有若干个字段(也叫数据项)。例如,在表1-1所示的表格数据中,每个结点都有登录号、书号、书名、作者、出版社和价格等六个字段构成。字段是构成数据的最小单位。3逻辑结构结点和结点之间的逻辑关系称为数据的逻辑结构。在表1-1所示的表格数据中,各结点之间在逻辑上有一种线性关系,它指出了10个结点在表中的排列顺序。根据这种
9、线性关系,可以看出表中第一本书是什么书,第二本书是什么书,等等。4存储结构数据在计算机中的存储表示称为数据的存储结构。在表1-1所示的表格数据在计算机中可以有多种存储表示,例如,可以表示成数组,存放在内存中;也可以表示成文件,存放在磁盘上,等等。5数据处理数据处理是指对数据进行查找、插入、删除、合并、排序、统计以及简单计算等的操作过程。在早期,计算机主要用于科学和工程计算,进入八十年代以后,计算机主要用于数据处理。据有关统计资料表明,现在计算机用于数据处理的时间比例达到80%以上,随着时间的推移和计算机应用的进一步普及,计算机用于数据处理的时间比例必将进一步增大。6数据结构(Data Stru
10、cture)数据结构是研究数据元素(Data Element)之间抽象化的相互关系和这种关系在计算机中的存储表示(即所谓数据的逻辑结构和物理结构),并对这种结构定义相适应的运算,设计出相应的算法,而且确保经过这些运算后所得到的新结构仍然是原来的结构类型。为了叙述上的方便和避免产生混淆,通常我们把数据的逻辑结构统称为数据结构,把数据的物理结构统称为存储结构(Storage Structure)。7数据类型数据类型是指程序设计语言中各变量可取的数据种类。数据类型是高级程序设计语言中的一个基本概念,它和数据结构的概念密切相关。一方面,在程序设计语言中,每一个数据都属于某种数据类型。类型明显或隐含地规
11、定了数据的取值范围、存储方式以及允许进行的运算。可以认为,数据类型是在程序设计中已经实现了的数据结构。另一方面,在程序设计过程中,当需要引入某种新的数据结构时,总是借助编程语言所提供的数据类型来描述数据的存储结构。8算法 简单地说就是解决特定问题的方法(关于算法的严格定义,在此不作讨论)。特定的问题可以是数值的,也可以是非数值的。解决数值问题的算法叫做数值算法,科学和工程计算方面的算法都属于数值算法,如求解数值积分,求解线性方程组、求解代数方程、求解微分方程等。解决非数值问题的算法叫做非数值算法,数据处理方面的算法都属于非数值算法。例如各种排序算法、查找算法、插入算法、删除算法、遍历算法等。数
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 语言
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内