- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《数据结构》教案
信息技术学院
软件教研室
课程说明
【目的】
1.数据结构是研究数据组织、存储和运算的一般方法的学科。
——理解并掌握数据的各种数据结构的原理与算法。
2. 学会分析研究计算机加工的数据结构的性质,以便为应用涉及的数据选择适当的逻辑结构、存储结构及其相应的算法,并初步掌握算法的时间分析和空间分析的技术。
3.数据结构是编程的基础。 程序=数据结构+算法
——能够以数据结构为基础,进行复杂程序编程, 且符合软件工程的规范。
4. 数据结构课程重点是培养学生的数据抽象能力。
【内容】
数据结构的基本概念(第1章)
2、线性表(第2、3、4、5章)
3、树(第6章)
4、图(第7章)
5、查找和排序(第9、10、11章)
【参考书】
1.数据结构 严蔚敏 清华大学出版社
2. 数据结构(c语言篇)——习题与解析(修订版)李春葆 清华大学出版社
3.
【教学安排】
课时分配表1 计算机与信管专业 43+8=51
章 目 内 容 讲课时数 实验时数 第一章 绪论 2 第二章 线性表 6 2 第三章 栈和队列 4 2 第四章 串 1 第五章 数组和广义表 2 第六章 树和二叉树 10 2 第七章 图 10 2 第九章 查找 4 第十章 排序 4 合计 51 43 8
绪论
【教学目的】
数据结构的基本概念,介绍数据和数据结构等名词和术语。
描述算法的类C语言
从时间和空间角度分析算法的方法
【教学要求】
掌握基本概念,了解抽象数据类型,掌握计算语句频度和估算算法时间复杂度,熟悉类C语言的书写规范。
【教学重点与难点】
描述算法的类C语言;抽象数据类型的概念;算法复杂性的分析方法
【教学追记】
1、熟悉各名词、术语的含义,掌握基本概念,特别是数据结构的三个方面(逻辑结构、存储结构、及其运算)。数据的逻辑结构和存储结构之间的关系。分清哪些是逻辑结构的性质,哪些是存储结构的性质。
2、了解抽象数据类型的定义、表示和实现方法。
3、理解算法五个要素的确切含义:①动态有穷性(能执行结束);②确定性(对于相同的输入执行相同的路径);③有输入;④有输出;⑤可行性(用以描述算法的操作都是足够基本的)。
掌握计算语句频度和估算算法时间复杂度的方法。
熟悉类C语言的书写规范,对学过C++的学生,比较输入/输出语句cin /cout;动态分配内存语句new与C语言的区别。
6、本章的授课方法:讲授为主,自学为辅,通过练习掌握概念和方法,可以通过1个编程,理解抽象数据类型的概念
【教学内容】
1.什么是数据结构
2.基本概念和术语
3.抽象数据类型的表示与实现
4.算法和算法分析
什么是数据结构
一、计算机解决具体问题的步骤
1、从具体问题抽象出一个适当的数学模型;
2、设计解此数学模型的算法;
3、编程,进行测试、调整直至得到最终解答。
对数值计算问题可以用数学方程来描述。 但是,对许多非数值计算问题无法用数学方程加以描述。需要用表、树、图等数学模型来描述。
二、非数值问题的三个例子
1、图书馆的书目检索系统自动化问题; ——表
2、计算机和人对弈问题; ——树
3、多叉路口交通灯的管理问题。 ——图
例1-1 书目自动检索系统
分析:在图书馆需要查阅图书目录卡片,可以利用计算机实现自动检索。
计算机处理的对象是数目信息,可以由登录号、书名、作者名、分类号、出版单位和出版时间等组成。在书目自动检索系统中可建立一张按登录号顺序排列的书目文件和三张分别按书名、作者名、分类号顺序排列的索引表。这四张表构成的文件便是书目自动检索的数学模型。See page 2 图1.1
类似的问题还有查号系统自动化、仓库帐目管理等。
结论:
在这类文档管理的数学模型中,计算机处理的对象之间通常存在着的是一种最简单的线性关系(一对一),这类数学模型可称为线性的数据结构。——表
例1-2 计算机和人对奕问题
分析:计算机能和人对弈是因为有人将对弈的软件事先存入计算机。
在对弈问题中,计算机操作的对象是对弈过程中可能出现的棋盘状态称为格局。
格局之间的关系是由比赛规则决定的,这个关系不是线性的。从一个格局可派生出几个格局。见 p2 图1.2
若将从对弈开始到结束的过程中所有可能出现的格局都画在一张图上,则可得到一棵倒长的“树”。
“树根”是对弈开始之前的棋盘格局,而所有的“叶子”就是可能出现的结局,对弈的过程就是从树根沿树叉到某个叶子的过程。
结论:
在人-机对弈问题的数学模型中,计算机处理的对象之间通常存在着一种“树”的关系。 “树”可以是某些非数值计算问题的数学模型,它也是一种数据结构。
例1-3 多叉路口交通灯管理问题
分析:在多叉路口需设
文档评论(0)