<4D F736F F D B8BDBCFE4220D7A8D2B5BBF9B4A1D3EBBACBD0C4BFCEB3CCC3E8CAF62E646F6378>

Similar documents
( 四 ) 指令流水线 六 总线 ( 一 ) 总线概述 ( 二 ) 总线仲裁 ( 三 ) 总线操作和定时 ( 四 ) 总线标准 七 输入输出 (I/O) 系统 ( 一 )I/O 系统基本概念 ( 二 ) 外部设备 ( 三 )I/O 接口 (I/O 控制器 ) ( 四 )I/O 方式 操作系统 : 第

2018 年天津城建大学攻读硕士学位研究生入学考试试题 (A) 卷 考试科目代码 :825 考试科目名称工程信息技术 招生专业 : 建筑与土木工程

3 堆栈与队列 (1) 堆栈与队列的基本概念 基本操作 (2) 堆栈与队列的顺序存储结构与链式存储结构的构造原理 (3) 在不同存储结构的基础上对堆栈与队列实施插入与删除等基本操作对应的算法设计 4 串 (1) 串的基本概念 串的基本操作和存储结构 (2) 串的模式匹配算法和改进的 KMP 算法 5

<4D F736F F D C4EABCC6CBE3BBFAD1A7BFC6BFBCD1D0B4F3B8D9>

2009年考研计算机学科专业基础综合考试大纲


考察目标 1 掌握数据结构的基本概念 基本原理和基本方法 2 掌握数据的逻辑结构 存储结构及其基本操作的实现, 能够对算法进行基本的时间复杂度与空间复杂度的分析 3 能够运用数据结构的基本原理和方法进行问题的分析和求解; 具备采用 c 或者 c++ 或者 java 语言设计与实现算法的能力 一 线性

Microsoft Word 年803计算机学科基础综合考试大纲.docx

四 试卷题型结构 单项选择题 80 分 (40 小题, 每小题 2 分 ) 综合应用题 70 分 IV 考查内容 数据结构 考查目标 1. 掌握数据结构的基本概念 基本原理和基本方法 2. 掌握数据的逻辑结构 存储结构及基本操作的实现, 能够对算法进行基本的时间复杂度与 空间复杂度的分析 3. 能够

<4D F736F F D B8BDBCFE4220D7A8D2B5BBF9B4A1D3EBBACBD0C4BFCEB3CCC3E8CAF62E646F6378>

Microsoft Word - 专升本练习5:图.doc

2013kmdg

<4D F736F F D B8BDBCFE4220D7A8D2B5BBF9B4A1D3EBBACBD0C4BFCEB3CCC3E8CAF62E646F6378>

试卷代号 : 座位号 CD 中央广播电视大学 学年度第二学期 " 开放本科 " 期末考试 数据结构 ( 本 ) 试题 I 题号 - - I 二 l 三 l 四 l 总 分 分数 I I I I I I 2009 年 7 月 得分 评卷人 I I I 一

重 庆 邮 电 大 学

浙江师范大学

第七章数组 掌握一维数组的定义 初始化及元素引用 ; 掌握二维数组的定义 初始化及元素引用 ; 掌握字符数组的定义及使用 ; 4. 了解字符串处理函数 ; 第八章函数 掌握函数的定义与调用 ; 掌握函数调用时的实参与形参的结合 ; 理解函数原型声明与函数在源程序中的相对位置的关系 ; 理解函数的嵌套

204 */ InitiateStack s ; /* s */ i = n; t = p = new node; /* */ p->data = postorder[i]; while i > q = new node; if parent[i - ] == postorder[i] S,T S

(1) 数组 广义表的基本概念 多维数组的实现 (2) 特殊矩阵 ( 包括对称矩阵 稀疏矩阵 ) 的压缩存储 5 树与二叉树 (1) 树 二叉树 森林的基本概念和性质 (2) 树 二叉树 森林的存储结构 ( 包括顺序存储结构 链式存储结构 ) (3) 树 二叉树 森林的遍历和转换操作 (4) 线索二

<4D F736F F D20CAD7B6BCCAA6B7B6B4F3D1A7CAFDBEDDBDE1B9B9BDB2D2E52E646F63>

中国科学院研究生院

华侨大学 2014 年硕士研究生入学考试专业课试卷 B ( 答案必须写在答题纸上 ) 招生专业 计算机技术 科目名称 数据结构与 C++ 科目代码 850 第一部分 C++ ( 总分 75 分 ) 一 单项选择题 (18 分, 每小题 2 分 ) 1. 若有定义 :int a[3][4];, 则表达

Microsoft Word A3.doc

2009

(8) 平衡二叉树 (9) 哈夫曼 (Huffman) 树和哈夫曼编码 6 图 (1) 图的基本概念 (2) 图的存储, 包括邻接矩阵法 邻接表法 (3) 图的遍历操作, 包括深度优先搜索 广度优先搜索 (4) 最小生成树, 最短路径, 关键路径 拓扑排序算法的原理与实现 7 文件及查找 (1) 数

PowerPoint Presentation


<4D F736F F F696E74202D20CAFDBEDDBDE1B9B9B8B4CFB0CCE22E707074>

Microsoft Word - 计算机考研专业课.docx

数据结构习题

PowerPoint Presentation

试卷代号 : 座位号 I II 中央广播电视大学 学年度第二学期 " 开放本科 " 期末考试 数据结构试题 2011 年 7 月! 题号 I - I 二 三 四! 五! 六 总分 分数 I I I 1 1- I ---1 I 得分 评卷人 一 单项选择

内 容 简 介 本书基于我们多年的教学经验 从实用的角度出发 对线性和非线性数据结构的顺序和链式存储及 其操作进行了详细讲解 书中的每一章均配有实践练习及大量习题 实现了理论与实践相结合 让学生 学以致用 本书免费提供电子课件 源程序及习题答案 全部案例均在 Visual C 环境中成功

四 课程与专业毕业要求的关联性 ( 必填项 ) 专业毕业要求 LO11: 能领会用户诉求 目标任务, 正确表达自己的观点, 具有专业文档的撰写能力 LO21: 能根据环境需要确定自己的学习目标, 并主动地通过搜集信息 分析信息 讨论 实践 质疑 创造等方法来实现学习目标 LO31: 工程素养 : 掌

41. 扑克牌游戏 八皇后问题 软件工程进度规划 随机整数排序 ( 希尔排序 ) 随机整数排序 ( 快速排序 ) 随机整数排序 ( 堆排序 ) 随机整数排序 ( 归并排序 )...


<4D F736F F D B8BDBCFE4220D7A8D2B5BBF9B4A1D3EBBACBD0C4BFCEB3CCC3E8CAF62E646F6378>

第1章 数据结构绪论

Microsoft Word - 作业.doc

试卷代号 : 座位号 中央广播电视大学 学年度第二学期 " 开放本科 " 期末考试 数据结构试题 2012 年 7 月 题号一四五总分一一 分数 得分 评卷人 - 单项选择题, 在括号内填写所选择的标号 { 每小题 2 分, 共 1 8 分 ) 1. 下面算法

马克思主义基本原理 通识教育课程范俊玉 1 08:00-08:50 数值分析 专业必修课程张亚楠 2 09:00-09:50 苏州大学 学年第 1 学期数学科学学院课程表 班级名称 :2014 基地人数 :37 辅导员 : 周扬实行日期 : 201

A.39 B.52 C.111 D.119 解析 C 根据完全二叉树的定义, 此树的前 6 层应该是满二叉树, 共有 = 63 个结点 第 6 层有 8 个叶子结点, 说明另外 32-8=24 个结点不是叶子结点, 最多各有 2 个孩子结点 而该树不可能有第 8 层存在, 所以结点总数最

Microsoft Word A.doc

<4D F736F F D B8BDBCFE4220D7A8D2B5BBF9B4A1D3EBBACBD0C4BFCEB3CCC3E8CAF62E646F6378>

Microsoft Word - 《C语言开发入门》课程教学大纲-2.doc

东北大学1996年考研题.doc

第 33 届宁波市中小学生信息学能力水平展示活动第一轮试题 第 33 届宁波市中小学生信息学能力水平展示小学组第一轮 pascal 试题 ( 说明 : 答案请填在答题卷上 考试时间 120 分钟, 满分 100 分 ) 一. 选择题 ( 每题 1.5 分, 共 30 分 每小题只有一个正确答案, 多

四 读算法 ( 每题 7 分, 共 14 分 ) 1. (1) 查询链表的尾结点 (2) 将第一个结点链接到链表的尾部, 作为新的尾结点 (3) 返回的线性表为 (a 2,a 3,,a n,a 1 ) 2. 递归地后序遍历链式存储的二叉树 五 法填空 ( 每空 2 分, 共 8 分 ) true B

什么是函数式编程?

中国科学技术大学1995年考研试题.doc

電機工程系認可證照清單 /7/1

考试大纲 :861 电路原理 上海科技大学硕士研究生入学考试 电路原理 考试大纲 一 考试形式闭卷, 笔试, 考试时间 180 分钟, 总分 150 分 二 试卷结构题型, 如概念题 ( 填空 选择 判断 简答 ), 应用题 ( 证明 计算 分析 设计 ) 等 三 考试科目电路原理 四 考试大纲 1

湖北工业大学二 八年招收硕士学位研究生试卷 则从顶点 A 出发进行深度优先遍历可以得到的序列是 : A.ACEDBFG B.ACDGFBE C.AECDBGF D.ABDGFEC 9 在对 n 个元素的序列进行排序时, 堆排序所需要的附加存储空间是 ( ) A. O(log 2 n) B. O(1)

一、单项选择题, 共十五小题,每小题2分,全题总分为30分

试卷代号 : 座位号 中央广播电视大学 学年度第一学期 " 开放本科 " 期末考试 数据结构试题 2011 年 1 月 题号一四五总分一一 分数 得分 评卷人 一 单项选择题, 在括号内填写所选择的标号 ( 每小题 2 分, 共 1 8 分 ) 1. 执行下


<4D F736F F D20BBAAC4CFC0EDB9A4B4F3D1A72020CAFDBEDDBDE1B9B9B8B4CFB0B1CABCC7D5FBC0ED2E646F63>

专业计算机基础教学情况调查表 ( 按学校名称排序 ) 1. 杭州师范大学 2. 杭州职业技术学院 3. 湖州师范学院 4. 嘉兴学院 5. 丽水学院 6. 宁波大学 7. 宁波大学科学技术学院 8. 宁波工程学院 9. 绍兴文理学院 10. 台州学院 11. 温州大学 12. 温州医科大学 13.

5 2. 过程与方法 情感 态度与价值观 三 知识结构图 四 教学内容和教学要求 课 程 教学要求 课时安排

Microsoft Word - PKUDS_design doc

<4D F736F F D E3131CAFDBEDDBDE1B9B9C6DAD6D0BFBCCAD4A3A8BAACB2CEBFBCB4F0B0B8A3A92E646F63>

Microsoft Word - 第3章.doc

<4D F736F F D CAFDBEDDBDE1B9B9BEABC6B7BFCEB3CCC9EAB1A8B1ED2D E646F6378>

7. 下图中所使用的数据结构是 ( ) 压入 A 压入 B B 弹出 B 压入 C C A A A A A. 哈希表 B. 栈 C. 队列 D. 二叉树 8. 在 Windows 资源管理器中, 用鼠标右键单击一个文件时, 会出现一个名为 复制 的 操作选项, 它的意思是 ( ) A. 用剪切板中的

华侨大学2011年硕士研究生入学考试专业课试卷

目 录 专业基础教育核心课程... 3 计算机导论 课程教学大纲... 3 C++ 程序设计 I- 基础 课程教学大纲 C++ 程序设计 II 面向对象 课程教学大纲 离散数学 课程教学大纲 数据结构 1 课程教学大纲 数字逻辑 课程教学大纲... 3

7. 下图中所使用的数据结构是 ( ) 压入 A 压入 B B 弹出 B 压入 C C A A A A A. 哈希表 B. 栈 C. 队列 D. 二叉树 8. 在 Windows 资源管理器中, 用鼠标右键单击一个文件时, 会出现一个名为 复制 的 操作选项, 它的意思是 ( ) A. 用剪切板中的

Turing Machine [1] n n n findmin (a 1, a 2,, a n ) 1. result a 1 2. index 2 3. result min (result, aindex) 4. index index go to step 3 till (in

泽雨教育 打造中国大学生知名品牌 开创大学生综合学习平台 A 确定性 B 可行性 C 无穷性 D 拥有足够的情报 解析 : 作为一个算法, 一般应具有以下几个基本特征 1 可行性 2 确定性 3 有穷性 4 拥有足够的情 报本题答案为 C 5 在计算机中, 算法是指 A 查询方法 B 加工方法 C

9. 体育课的铃声响了, 同学们都陆续地奔向操场, 按老师的要求从高到矮站成一排 每个同学按顺序来到操场时, 都从排尾走向排头, 找到第一个比自己高的同学, 并站在他的后面 这种站队的方法类似于 ( ) 算法 A. 快速排序 B. 插入排序 C. 冒泡排序 D. 归并排序 年 ( )

华侨大学 2013 年硕士研究生入学考试专业课试卷 ( 答案必须写在答题纸上 ) 招生专业 计算机技术 科目名称 数据结构与 C++ 科目代码 850 第一部分数据结构 ( 共 75 分 ) 一 单项选择题 ( 每小题 2 分, 共 24 分 ) 1. 执行下面程序段时, 则 S 语句的语句频度是

给定一个长度为 n 包含 100 个变量的布尔公式 F, 判断 F 是否可满足是 NP-complete, 假设 P NP. 2. Multiple Choices Select One (15 problems, 2 points each) 单选题 (15 题, 每题 2 分 ) Each qu

<4D F736F F F696E74202D20536C FB5DACBC4D5C220CAF7D3EBB6FEB2E6CAF7205BBCE6C8DDC4A3CABD5D>

排序算法 排序 (Sorting): 将一串数据依照指定方式进行排列 常用排序方式 : 数值顺序, 字典顺序 时间复杂度 ( 最差 平均 ): 设有 n 个数据, 一般来说, 好的排序算法性能是 O(n log n), 差的性能是 O(n 2 ), 而理想的性能是 O(n) 空间复杂度 : 算法在运

《C语言程序设计》


填表说明一 以只读方式为否的形式打开此表, 修改后保存 二 请填写表中绿色部分的内容, 表中白色部分为固定内容或自动统计, 请勿修改 三 考试方式分为考试 考查两种, 若为考试课程请划, 若为考查课程请划 O 四 务必注意各学期 ( 含小学期 ) 的学分分布均衡性问题 五 各学院按照 课程编码规则

<4D F736F F F696E74202D20CAFDBEDDBDE1B9B9B8C5C2DBA3ADB5DA38D5C2B2E9D5D22D E BBCE6C8DDC4A3CABD5D>

Applications: Haffman Tree 叶结点权值集合为 W={1,3,5,7} 的哈夫曼树的构造过程 可以计算出其带权路径长度为 29, 由此可见, 对于同一组给定叶结点所构造的哈夫曼树, 树的形状可能不同, 但带权路径长度值是相同的, 一定是最小的 第一步 第二步

Microsoft PowerPoint - Chap01.pptx

Microsoft PowerPoint - DS8-sort-2.ppt

untitled

6.1 树的定义和基本术语 6.2 二叉树 ( 定义 性质 存储结构 ) 6.3 遍历二叉树和线索二叉树 6.4 树和森林 6.5 赫夫曼树及其应用

树的非递归中序和层次遍历实现

6 tree

<4D F736F F D20D6A3D6DDB4F3D1A7CAFDBEDDBDE1B9B9B1CABCC72E646F63>

08-01.indd

PowerPoint Presentation

算法分析与问题的计算复杂度

第八章一维数组的定义和使用 学时 2 学时 +2 学时 授课形式理论课 + 上机课 教学内容一维数组的定义和使用 教学对象及其特征 教学目标 教学方法与手段 重难点 教学环境和资源 教材及参考资料 板书设计 教学设计 教学对象 : 信息技术学院一年级学生教学特征 : 1. 学生能够熟练使用多媒体工具

PowerPoint Presentation

上海理工大学学报 社会科学版 年第 卷 非数值计算类问题所用的各类数据的逻辑结构 存储方式以及在各种结构上执行的主要操作 其既是程序设计的基础 又是设计和实现系统软件及大型应用软件的重要基础 通过 数据结构 课程的学习 使学生能够熟练地掌握数据结构的内在逻辑关系及其在计算机中的存储结构 以及有关基本

PowerPoint 演示文稿

PowerPoint 演示文稿

吉林大学1995年考研试题.doc

untitled

什么是 Servlet 技术 Servlet 与 JSP 的联系与区别 实例介绍了解 Servlet 技术的特点和应用领域, 以及与 JSP 的联系与区别 4.EJB 技术 EJB 技术基础 EJB 基本环境的建立 实例介绍了解 EJB 技术的特点和应用领域, 熟悉 EJB 应用的部署和维护 5.S

PowerPoint 演示文稿

一、单项选择题, 共十五小题,每小题2分,全题总分为30分

8:10-9:50 第一公共教学楼 A 高等数学 ( 文 ) 广告 人文与法学院 8:10-9:50 第一公共教学楼 A 高等数学 ( 经管 ) 国贸 经济学院 8:10-9:50 第一公共教学楼 A

Transcription:

B212CC: 数据结构与算法 课程描述 0 课程基本信息 课程编号 : B212CC 课程名称 : 数据结构与算法英文名称 : Data Structures and Algorithms 英文简称 : DSA 预备课程 : 计算系统基础 离散数学授课时间 : 二年级第一学期时间分配 : 课堂教学 (48 课时 )+ 实验安排 (48 课时 )+ 课后作业与阅读 (48 课时 ) 学分数 : 3 1 课程简介 本课程是软件工程专业的专业基础课程 主要内容包括常用的抽象数据类型 ( 表 串 栈 队列 树 图 ) 及其相关操作, 常用的基本算法 ( 查找和排序 ) 算法策略 ( 穷举 贪婪 分治和回溯 ) 和算法分析 ( 包括时间和空间复杂性分析 ), 以及递归和常用的递归算法 通过本课程的学习, 学生能够较为全面地掌握各种常用的数据结构及其算法, 能够为实际问题选择合适的数据结构及其算法 2 教材与参考资料 2.1 教材与指定阅读材料 1) Mark Allen Weiss, Data Structures and Algorithm Analysis in Java (Second Edition), Pearson Education, 2007 2.2 参考资料 1) 殷人昆等, 数据结构 ( 用面向对象方法与 C++ 描述 ), 清华大学出版社,1999 2) Sartaj Sahni, Data Structures, Algorithms, and Applications in C++, McGraw-Hill, 1998 3 教学目标 通过本课程的学习, 学生应该能够 : 1) 掌握表 串 栈 队列等数据结构的抽象数据类型描述及其相关操作 ; 2) 掌握树 图等数据结构抽象数据类型描述, 以及二叉树的遍历 线索二叉树, 图的遍历 生成树 最短路径 拓扑排序 关键路径等算法 ; 3) 掌握常用的查找和排序算法 ; 4) 掌握递归知识和常用的递归算法 ; 5) 初步掌握算法的时间复杂性与空间复杂性的分析 ; 6) 初步掌握基本的算法策略, 如穷举 贪婪 分治和回溯等 ; 7) 学会分析问题, 组织数据结构, 设计良好算法, 解决实际应用问题 附录 B 第 35 页

4 相关知识体系 编号 描述 k, c, a E, D, O 学时 CSE-PF.fds.0 基本数据结构 26 CSE-PF.fds.1 基本类型 c E * CSE-PF.fds.2 记录 c E * CSE-PF.fds.3 数组 c E * CSE-PF.fds.4 字符串和字符串处理 c E * CSE-PF.fds.5 数据在存储器中的表示 c E * CSE-PF.fds.6 静态分配 栈式分配和堆式分配 c E * CSE-PF.fds.7 运行时的存储器管理 c E * CSE-PF.fds.8 指针和引用 c E * CSE-PF.fds.9 链式结构 c E 2 CSE-PF.fds.10 栈和队列的基本概念 c E 1 CSE-PF.fds.11 栈和队列的顺序存储结构 c E 1 CSE-PF.fds.12 栈和队列的链式存储结构 c E 1 CSE-PF.fds.13 栈和队列的应用 c E 1 CSE-PF.fds.14 特殊矩阵的压缩存储 c E 1 CSE-PF.fds.15 散列的概念, 散列函数, 散列表 c E 1 CSE-PF.fds.16 树的概念 c E 1 CSE-PF.fds.17 二叉树 ( 二叉树的定义及其主要特征 二叉树的顺序存储结构和链式存储结构 二叉树的遍历 线索二叉树的基本概念和构造 二叉排序 树 平衡二叉树 ) CSE-PF.fds.18 树 森林 ( 树的存储结构 森林与二叉树的转换 树和森林的遍历 ) CSE-PF.fds.19 树的应用 ( 等价类问题 哈夫曼树和哈夫曼编码 ) CSE-PF.fds.20 图的概念 c E 1 CSE-PF.fds.21 图的存储及其基本操作 ( 邻接矩阵法 邻接表法 ) c E 2 CSE-PF.fds.22 图的遍历 ( 深度优先搜索 广度优先搜索 ) c E 2 CSE-PF.fds.23 图的基本应用及其复杂度分析 ( 最小 ( 代价 ) 生成树 最短路径 拓扑排序 关键路径 ) c E 2 CSE-PF.rec.0 递归 3 CSE-PF.rec.1 递归的概念 c E * CSE-PF.rec.2 递归数学函数 c E * CSE-PF.rec.3 递归过程 c E 1 CSE-PF.rec.4 递归的实现 c E 1 CSE-PF.alg.0 算法和问题求解 3 CSE-PF.alg.1 问题求解策略 a O * CSE-PF.alg.2 问题求解算法 a O 1 CSE-PF.alg.3 算法实现策略 a O 1 CSE-PF.alg.4 测试策略 a O * CSE-PF.alg.5 算法的概念和特性 a O * CSE-AL.fal.0 基本算法 10 附录 B 第 36 页

CSE-AL.fal.1 查找的基本概念 c E * CSE-AL.fal.2 顺序查找算法和折半查找算法 c E * CSE-AL.fal.3 B- 树 c E 1 CSE-AL.fal.4 二叉查找树 c E 1 CSE-AL.fal.5 散列表及其查找 c E 2 CSE-AL.fal.6 查找算法的分析及应用 c E * CSE-AL.fal.7 排序的基本概念 c E * CSE-AL.fal.8 插入排序 ( 直接插入排序 折半插入排序 ) c E 1 CSE-AL.fal.9 冒泡排序 (bubble sort) c E * CSE-AL.fal.10 简单选择排序 c E 1 CSE-AL.fal.11 希尔排序 (shell sort) c E 1 CSE-AL.fal.12 复杂度为 O(N*LogN) 排序算法 ( 快速排序 堆排序 归并排序 ) c E 1 CSE-AL.fal.13 基数排序 c E 1 CSE-AL.fal.14 各种内部排序算法的比较 c E * CSE-AL.fal.15 内部排序算法的应用 c E * CSE-AL.ala.0 算法分析基础 4 CSE-AL.ala.1 复杂性上界和平均复杂度的渐近分析 c E 1 CSE-AL.ala.2 最佳 最差和平均情况下的复杂度差异 c E * CSE-AL.ala.3 大 O 小 O Ω 和 θ 符号 c E * CSE-AL.ala.4 标准复杂度类 c E * CSE-AL.ala.5 性能的经验度量 c E * CSE-AL.ala.6 算法时间 空间复杂度的权衡 c E 1 CSE-AL.ala.7 用递归关系分析递归算法 c E 1 CSE-AL.als 算法策略 4 CSE-AL.als.1 穷举 a O 1 CSE-AL.als.2 贪婪 a O 1 CSE-AL.als.3 分治 a O 1 CSE-AL.als.4 回溯 a O 1 5 教学补充事项 5.1 对前驱课程的教学需求通过 计算与软件工程 I 课程的学习, 学生能够掌握程序设计的基本方法与技巧 通过 离散数学 课程的学习, 学生能够掌握图论的有关基础知识 5.2 本课程的教学考虑课程内容的教学既要强调数据结构和算法的实现, 提高学生的程序设计能力, 又要联系相关实例, 培养学生对知识的实际运用能力 5.3 对后续课程的教学建议 数据库系统 操作系统 等后继课程结合各自的需要, 进行各种数据结构和算法的实现, 通过实际应用加深学生对所相关数据结构和算法的理解 附录 B 第 37 页

6 教学计划 序号 主题 内容 课时 相关知识体 基本类型, 记录, 数组, 字符串和字符串处理, 1 概述 数据在存储器中的表示, 静态分配 栈式分配 CSE-PF.fds.1~8 3 和堆式分配, 运行时的存储器管理, 指针和引 CSE-PF.rec.1~3 用, 递归的概念, 递归数学函数, 递归过程 2 算法与问问题求解策略, 问题求解算法, 算法实现策略, 题求解测试策略, 算法的概念和特性 3 CSE-PF.alg.1~5 复杂性上界和平均复杂度的渐近分析, 最佳 最差和平均情况下的复杂度差异, 大 O 小 o 3 算法分析 Ω 和 θ 符号, 标准复杂度类, 性能的经验度量, 算法时间 空间复杂度的权衡, 用递归关系分析递归算法 4 CSE-AL.ala.1~7 4 5 6 7 散列 8 图 线性表 栈 队列 树与二叉树 查找与排序 线性表 栈和队列的 ( 基本概念, 顺序存储结构, 链式存储结构, 应用 ), 特殊矩阵的压缩存储, 递归的实现树的概念, 二叉树 ( 二叉树的定义及其主要特征 二叉树的顺序存储结构和链式存储结构 二叉树的遍历 线索二叉树的基本概念和构造 二叉排序树 平衡二叉树 ), 树 森林 ( 树的存储结构 森林与二叉树的转换 树和森林的遍历 ), 树的应用 ( 等价类问题 哈夫曼树和哈夫曼编码 ) 查找的基本概念, 顺序查找算法和折半查找算法,B- 树, 二叉查找树, 查找算法的分析及应用 ; 排序的基本概念, 插入排序 ( 直接插入排序 折半插入排序 ), 气泡排序 (bubble sort), 简单选择排序, 希尔排序 (shell sort), 快速排序, 堆排序, 二路归并排序 (merge sort), 基数排序, 各种内部排序算法的比较散列的概念, 散列函数, 散列表, 散列表及其查找, 解决冲突的方法 图的概念, 图的存储及其基本操作 ( 邻接矩阵法 邻接表法 ), 图的遍历 ( 深度优先搜索 广度优先搜索 ), 图的基本应用及其复杂度分析 ( 最小 ( 代价 ) 生成树 最短路径 拓扑排序 关键路径 ) 8 CSE-PF.fds.9~14 CSE-PF.rec.4 10 CSE-PF.fds.16~19 9 3 CSE-AL.fal.1~4 CSE-AL.fal.6~15 CSE-PF.fds.15 CSE-AL.fal.5 7 CSE-PF.fds.20~23 9 算法策略算法策略 ( 穷举, 贪婪, 分治, 回溯 ) 4 CSE-PF.als.1~4 7 实验 7.1 实验目标通过实验使学生掌握 分析问题 构筑解题框架 具体编程 上机调试 的解题过程 7.2 实验内容实验一 : 递归实现从 n 个自然数中取 r 个数的所有组合 ; 实验二 : 用递归或非递归实现 hanoi 塔 ; 附录 B 第 38 页

实验三 : 用链表实现多项式相加 ; 实验四 : 用数组或链表实现 Josephus(n, m) 问题 ; 实验五 : 用一趟扫描实现由中缀表达式到后缀表达式的转换, 再对后缀表达式求值 ; 实验六 : 建立一棵二叉树, 并输出先序 中序 后序遍历结果 ; 实验七 : 判别一个有向图中是否有环路, 并把所有环路打印出来 7.3 指导方式首先在课堂上讲清问题的要求 与同学一起分析解题的思路 ; 1) 课后由同学独立思考, 也可以小组讨论 接着编程 上机调试 ; 2) 助教最后一对一的检查每个同学的每个实验结果, 最后进行总结 8 课后作业 课后作业应该包含 : 1) 线性表的定义与基本操作 ; 2) 栈和队列的基本概念 栈和队列的顺序存储结构 栈和队列的链式存储结构 栈和队列 的应用 ; 3) 二叉树的顺序存储结构和链式存储结构 二叉树的遍历 线索二叉树的基本概念和构造 二叉排序树 平衡二叉树 ; 4) 树的存储结构 森林与二叉树的转换 树和森林的遍历 ; 5) 哈夫曼 (Huffman) 树和哈夫曼编码 ; 6) 图的存储及基本操作 ( 邻接矩阵法 邻接表法 ), 图的遍历 ( 深度优先搜索 广度优先搜 索 ), 图的基本应用及其复杂度分析 ( 最小生成树 最短路径 拓扑排序 关键路径 ); 7) 顺序查找法, 折半查找法,B- 树, 散列 (Hash) 表及其查找, 查找算法的分析及应用 ; 8) 插入排序, 直接插入排序, 折半插入排序, 气泡排序 (bubble sort), 简单选择排序, 希 尔排序 (shell sort), 快速排序, 堆排序, 二路归并排序 (merge sort), 基数排序 9 评分体系 笔试 60%+ 实验 30%+ 课后作业 10% 附录 B 第 39 页