网站大量收购独家精品文档,联系QQ:2885784924

数据结构(英)本科.doc

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构(英)本科 教学大纲 课程编号:040301 课程类别:自然 先修课程:C++语言程序设计、离散数学 适用专业:计算机科学与技术,信息计算与科学,信息安全,地理信息系统 课程学分/学时:4学分/ 64学时(讲课54学时,上机10学时) 性质与任务: 《数据结构》是计算机科学特别是计算机软件的一门重要基础课程,计算机科学各领域都要使用这些基本数据结构和基本算法。如编译要使用多维数组及广义表、散列表及语法树;操作系统要使用线性表、多链表等结构;人工智能要用到树、图、广义表等复杂的数据结构。通过本课程的理论学习与实践,使学生掌握基本的数据结构,掌握数据结构的内在逻辑关系,在计算机中的存储表示,掌握常用的排序和查找算法,提高程序设计能力,掌握基本的算法分析方法,学会分析、解决问题的方法。 教学主要内容及学时分配 绪论(2学时) 数据结构等基本概念和术语; 算法效率的度量方法——复杂度; 栈和队列(12学时) 栈的定义、性质、基本操作; 栈的抽象数据类型与实现; 队列的定义、性质、基本操作; 队列的抽象数据类型与实现。 栈与递归的关系,递归的性质与实现 线性表和串 (2学时) 线性表的定义、性质、基本操作; 线性表的抽象数据类型与实现; 串的定义、抽象数据类型与实现。 查找 (4学时) 顺序查找算法和二分查找算法; 比较树; 排序 (8学时) 直接插入排序算法及特点; 希尔排序、选择排序、冒泡排序算法及特点; 快速排序的算法及特点; 归并排序及特点; 堆排序及特点; 基数排序及特点; 各种排序算法的复杂度分析 表与信息检索(4学时) 表(Tables)的定义、性质、存储实现; 基于表的检索; 哈希表的定义、性质、存储实现与检索; 树和二叉树 (10学时) 二叉树的定义、性质、存储实现; 二叉树的遍历算法、二叉查找树; 树和森林的二叉树表示及其转换; 树、B树、平衡二叉树。 图 (12学时) 图的定义、性质、存储实现; 图的深度优先和广度优先遍历算法; 图的拓扑排序、最短路径算法; 图的生成树、最小生成树的概念,最小生成树的算法; 图的算法复杂度分析 教学基本要求 绪论:掌握数据结构等基本概念和术语;掌握计算语句频度和估算算法时间复杂度的方法。 栈和队列 掌握栈的定义、性质、基本操作,掌握栈的抽象数据类型与实现方法,并能在在实际问题中熟练应用栈这种数据结构; 掌握队列的定义、性质、基本操作,掌握队列的抽象数据类型,掌握循环队列、链表队列的具体实现,并能在在实际问题中熟练应用队列这种数据结构; 理解栈与递归的关系,掌握递归的性质和特点;掌握分析递归程序和消除尾递归的方法;理解栈与程序调用之间的关系; 线性表和串:掌握线性表的定义和性质,掌握单链表、双链表的实现方法,理解串的定义、抽象数据类型与实现。 查找:掌握顺序查找算法和二分查找算法以及他们的特点,理解比较树; 排序 掌握直接插入排序、希尔排序、选择排序、冒泡排序算法; 掌握快速排序、归并排序的算法; 理解堆排序; 了解基数排序; 掌握各种排序算法的复杂度,理解各种排序算法特点,能够针对实际问题选择合适的排序算法。 表与信息检索 掌握各种表(Tables)的定义、性质、存储实现; 理解基于表的检索; 掌握哈希表的定义、性质、存储实现,掌握哈希函数构造方法,散列地址冲突解决方法,掌握哈希表的检索; 树和二叉树 掌握二叉树的定义、性质、存储实现; 掌握二叉树的遍历算法、理解二叉查找树定义、以及插入和删除节点的算法; 理解树和森林的二叉树表示及其转换; 理解平衡二叉树的定义、以及插入和删除节点的算法,了解B树。 图 (8学时) 掌握图的定义和基本术语、图的存储实现; 掌握深度优先和广度优先遍历图的算法及其时间复杂度; 理解图的拓扑排序方法,理解Dijkstra算法和Floyed算法的思想及其时间复杂度;了解AOE网和关键路径 理解图的生成树、最小生成树的概念,掌握最小生成树的算法及其时间复杂度; 使用教材及主要参考书 Robert L. Kruse, Alexander J. Ryba著,Data Structures and Program Design in C++,高等教育出版社,Pearson Education 出版集团,2001。 Sartaj Sahni. Data Structures, Algorithms, and Applications In C++, 机械工业出版社,McGraw-Hill. 1999。 严蔚敏,吴伟民编著,数据结构:C语言版,清华大学出版社,1996。 许卓群等编,数据结构,高等教育出版社

文档评论(0)

yan666888 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档