- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
数据结构
(DataStructure)
课程基本信息
课程编号课程总学时:32
实验学时:8学时
课程性质:选修
课程属性:专业类
开设学期:第4学期
适用专业:电子信息工程
对先修的要求:高等数学、C语言程序设计
对后续的支撑:人工智能导论
一、课程的教学理念、性质、目标和任务
《数据结构》是电子信息专业的一门专业选修课。“数据结构”是设计与实现编译程序、操作系统、数据库系统及其它系统程序和大型应用程序的重要基础,是介于数学,计算机硬件,软件之间的一门重要课程。本课程较系统地介绍了软件设计中常用的数据结构以及相应的存储结构和实现算法,介绍了常用的多种查找和排序技术,并对进行性能分析和比较。数据结构是程序设计(特别是非数值计算的程序设计)的基础,也是设计和实现编译程序、操作系统、数据库系统及其它系统程序和大型应用程序的重要基础。数据结构课程要求掌握数据组织方法和计算机的表示方法,为数据选择适当的逻辑结构、存储结构以及相应的处理算法,能够分析算法的时间、空间复杂度,培养良好的程序设计风格,掌握进行复杂程序设计的技能。本课程的学习将为后续课程的学习以及软件设计水平的提高打下良好的基础。
二、课程目标及对毕业要求指标点的支撑
序号
课程目标
支撑毕业要求指标点
毕业要求
1
掌握数据结构的相关概念,理解计算机处理非数值数据问题的基本原理和处理方法,掌握实际问题到不同数据类型数据的抽象过程和处理方法;
指标点1.2
2
2
理解计算机处理数据的基本方法,能够运用数据分析以及数据处理算法,对实际问题进行分析和处理,并能得到有效结果。
指标点2.4
4
三、教学内容及进度安排
(一)理论教学
序号
教学内容
学生学习
预期成果
课内
学时
教学方式
支撑
课程目标
1
第1章绪论
数据结构、算法描述和算法分析、算法作性能评价的方法;理解抽象数据类型的表示与实现;掌握数据结构的内容。
熟悉与数据结构相关的基本概念和基本方法。
2
课堂PPT讲解
目标1
2
第2章线性表
线性表的抽象数据类型定义;线性表的顺序存储和链式存储方法;线性表的各种运算、一元多项式的表示及相加。
掌握线性表的各种运算、一元多项式的表示及相加。
2
课堂PPT讲解+代码演示;
典型应用案例分析。
目标1
3
第3章限定性线性表——栈和队列
栈和队列的抽象数据类型定义;栈与递归的实现;栈和队列的典型应用;用顺序结构和单链表结构实现栈和队列
掌握栈和队列两种限定性线性表的定义、概念、性质和操作方法。
4
课堂PPT讲解+代码演示;
典型应用案例分析。
目标1
4
第4章树和二叉树
树的概念与定义;二叉树的性质;二叉树、树、森林与二叉树的相互转换。
掌握二叉树的遍历,二叉树、树、森林与二叉树的相互转换,哈夫曼树及其应用。
6
课堂PPT讲解+代码演示;
典型应用案例分析。
目标1
5
第5章图
图的定义与基本术语;有向无环图的应用和最短路径;图的存储结构、图的遍历、图的连通性问题;图的存储结构、图的遍历。
掌握各种图的结构、遍历等知识,并能应用图的知识解决实际问题。
4
课堂PPT讲解+代码演示;
典型应用案例分析。
目标1
6
第6章查找
查找算法的性能评价方法;基于线性表的查找法、基于树的查找法、计算式查找法——哈希法;基于线性表的查找法、基于树的查找法、计算式查找法——哈希法。
掌握常用的查找方法。
2
课堂PPT讲解+代码演示;
典型应用案例分析。
目标1
7
第7章内部排序
排序的基本概念;直接插入排序、希尔排序、冒泡排序、快速排序、简单选择排序、归并排序。
掌握常用的排序方法。
2
课堂PPT讲解+代码演示;
典型应用案例分析。
目标1
(二)实验教学
序号
实验名称
学时
实验教学内容
学习要求
支撑
课程目标
1
实验一线性表的基本操作
2
在不同的存储结构(顺序结构和链式结构),实现线性表的基本操作。
掌握线性表的特点;掌握线性表的顺序存储结构和链式存储结构的基本运算;掌握线性表的基本操作;能独立编写程序并通过调试。
目标2
2
实验二栈及其应用
2
编写一个程序listack.cpp,实现链栈(假设栈中元素类型ElemType为char)的各种基本运算,并在此基础上设计一个程序完成如下功能:初始化栈s;判断栈s是否非空;依次进栈元素a、b、c、d、e;判断栈s是否非空;输出出栈序列;判断栈s是否非空;释放栈。
掌握栈的特点;掌握栈的顺序存储结构和链式存储结构的基本运算;掌握栈的基本操作;能独立编写程序并通过调试。
目标2
3
实验三队列的基本操作
2
编写一个程序,实现队列(假设队列中元素类型ElemType为char)的各种基本运算,并在此基础上设计一个程序,完成如下功能:初始化队列q;判断队
文档评论(0)