数据结构与算法-第一章 绪 论.pptVIP

  • 3
  • 0
  • 约5.9千字
  • 约 36页
  • 2019-08-04 发布于山东
  • 举报
第一章 绪论 第一章 绪论 * 数 据 结 构 * * 教材:严蔚敏, 吴伟民编著.数据结构(C语言版).清华大学出版社,1997 参考书: 1 晋良颖.数据结构.人民邮电出版社,2003 2 徐孝凯.数据结构实用教程.清华大学出版社,1999 3 严蔚敏等.数据结构题集(C语言版).清华大学出版社 4 李春葆.数据结构(C语言篇)习题与解析.清华大学出版社 5 前言考试研究室.全真题解—数据结构与程序设计分册.人民邮电出版社 6 R.F.Gilberg, B.A.Forouzan. Data Structures A Pseudocode approach with C++. 人民邮电出版社,2001 * 第一章 绪论 * 第一章 绪 论 1.1 简介(什么是数据结构) 1.2 基本概念和术语 1.3 抽象数据类型的表示与实现 1.4 算法和算法分析 * 第一章 绪论 * 第一章 绪 论 计算机科学是一门研究用计算机进行信息表示和信息处理的科学(算法的科学)。 早期计算机主要应用于科学计算,特点是数据类型简单、算法复杂,侧重于建立程序,称之为数值计算。 现在计算机处理对象可以是数字、字符、表格、声音、图象等各种信息。 非数值计算的数据十分丰富,而且通常有一定的结构。 * 第一章 绪论 * 对非数值数据进行组织,不仅要研究处理对象的特性,还需要研究它们之间的关系(结构) 因此,为了编写出一个“好”的程序,除了要掌握所用的计算机语言外,还必须分析待处理的对象的特征及各对象之间存在的关系,这就是《数据结构》这门课所要研究的问题。 * 第一章 绪论 * 1.1 简介 1 什么是数据结构(数据结构研究什么) 非数值计算的处理程序要解决三方面的问题:(1) 要对所加工的对象进行逻辑组织;(2)如何把加工对象存储到计算机中;(3)数据运算 例、电话号码查询系统 设有一个电话号码薄,它记录了N个人的名字和其相应的电话号码,要求设计一个算法,当给定任何一个人的名字时,该算法能够打印出此人的电话号码,如果该电话簿中根本就没有这个人,则该算法也能够给出不存在的信息。 * 第一章 绪论 * 逻辑结构的选取(选取数据元素;元素间关系的选取—顺序关系)。 存储结构的选取(顺序存储或链式存储等)。 算法设计(顺序存储时有两种算法:顺序查找和折半查找;链式存储时只能用顺序查找)。 本问题是一个非数值运算的数学模型,但它不是一个数学公式,而是根据实际问题的需要设计出的一个处理模型。 数据元素之间的关系称为结构。上述例子可认为是一种线性结构,其它复杂的结构有树形结构和图状结构(网状结构)。 * 第一章 绪论 * 例1 图书馆的书目检索系统自动化问题 例2 计算机和人对弈问题 例3 多叉路口交通灯的管理问题 数据结构就是研究数据的逻辑结构和相应 的存储结构以及有关操作的算法,并分析 它们的时间和空间复杂度。 * 第一章 绪论 * 2 数据结构的发展 1968年在国外规定为一门独立的课程,美国D.E.Knuth教授的著作《计算机程序设计技巧》第一卷《基本算法》出版,系统阐述数据的逻辑结构和存储结构及其操作 20世纪60年代末70年代初有:数据结构+算法=程序设计的思想 20世纪70年代中期到80年代初,各种版本的数据结构著作问世 我国从1978年开设本课程,目前,它不仅是计算机专业教学计划中的核心课程之一,而且是其他非计算机专业的主要选修课程之一。 发展方向:面向专门领域中特殊问题的数据结构;从抽象数据类型的观点讨论数据结构 * 第一章 绪论 * 3 数据结构在计算机科学中的地位 《数据结构》在计算机科学中是一门综合性的专业基础课,是介于数学、计算机硬件和计算机软件三者之间的一门核心课程。 《数据结构》不仅是一般程序设计的基础,而且是设计和实现编译程序、操作系统、数据库系统及其它系统程序和大型应用程序的重要基础。 《数据结构》是计算机专业各类考试(包括研究生考试、专升本考试等)中的必考课程。 * 第一章 绪论 * 4 与先修课—C++语言程序设计的联系和区别 C语言侧重于通过编写不太复杂的程序而理解掌握语言的特性和语言的运用。 数据结构侧重于解决问题的策略和方法,即研究算法。 数据结构不但要求给出问题的一种算法,还要求算法的时空效率高,算法结构和可读性好、容易验证等等。对问题的数据表示和解法所采取的观点也大大提高了一步,通过定义数据结构及其上的操作以解决问题。 解决某个问题的程序,如果是用“就事论事”的策略写成的,在C语言中可能是合格的,在数据结构中过去的算法可能就不再合格了 * 第一章 绪论 *

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档