数据结构〖hth〗课程编号
结构力学 〖HTH〗 - 哈工大继续教育学院·国际合作教育学院

结构力学HTH〗课程编号:72050602类〓〓别:脱产层〓〓次:本科讲课学时:68HT〗〖BT1〗一、本课程的地位、作用和任务结构力学是建筑工程专业的一门重要技术基础课程。
它的主要任务是,在先修课程的基础上进一步研究杆系结构的合理组成规律、计算原理和计算方法。
分析各类杆件结构的受力特点,掌握静定结构和超静定的内力计算方法。
掌握结构矩陈分析,为日后用电子计算机解算结构提供必要的理论知识。
通过结构动力学的学习,掌握动内力、动位移的计算原理和计算方法,能够作出合理的动力设计,为学习抗震结构打下动力计算的基础。
本课程的作用是,培养学生具有系统的结构力学知识,为将来从事结构设计、施工和研工作打下良好的理论基础,同时也为学习后继专业课程提供了必要的力学知识及计算能力。
〖BT1〗二、本课程对先修课程的要求先修课程为:高等数学、线性代数、理论力学、材料力学。
〖BT1〗三、教学内容与教学要求1结构力学的研究对象、研究内容。
本课程与其它课程之间的关系,本课程的学习方法,结构计算简图,结构的分类。
结构计算简图是重点,可通过结点和支座的简化加以说明,以便使学生理解计算简图的重要性。
2理解几何不变、几何可变的概念及学习本章的重要意义。
理解自由度、刚片、约束的概念。
掌握几何不变体系的组成规则,理解瞬变和常变的概念,会利用以上概念和规则熟练地分清以下四种体系:无多余约束的几何不变体系,有多余约束的几何不变体系,瞬变体系,常变体系。
3了解多跨静定梁的组成方式。
理解基本部分和附属部分的概念。
掌握两部分受力分析之间的关系及其计算次序,并绘出弯矩图和剪力图。
4定单面刚架掌握简单刚架绘制内力图的基本方法(取分离、列平衡方程)。
在此基础上掌握绘制弯矩图的简便方法(根据结点平衡条件求出杆端弯矩,再用叠加法绘示弯矩图)。
简单刚架、三铰刚架、主从刚架内力图的绘制应熟练掌握,尤其是绘弯矩图更为重要。
5通过与简支梁的对比,理解三铰拱的受力特点。
数据结构 〖HTH〗

3.1 连通图及非连通图的深度优先搜索和广度优先搜索两种遍历算法
其执行过程以及时
间复杂性分析
3.2 确定两种遍历所得到的顶点访问序列
3.3 图的两种遍历与树的遍历之间的关系
.
3.4 两种遍历所使用的辅助数据结构(钱或队列)在遍历过程中所起作用
3.5 利用图的两种遍历设计算法解决简单的应用问题
2.1 数据结构在各种软件系统中所起的作用
2.2 选择合适的数据结构是解决应用问题的关键步骤
3.算法的描述和分析(领会)
3.1算法、算法的时间复杂度和空间复杂度、最坏的和平均的时间复杂度等概念
3.2算法的时间复杂度不仅仅依赖于问题的规模
也取决于输入实例的初始状态
特殊矩阵和稀疏短阵的压缩存储方
法及广义表的概念和性质
要求熟悉这些内容
本章重点是熟悉多级数组的存储方式、短阵
的压缩存储方式、广义表的定义及其性质
难点是稀疏短阵的压缩存储表示下实现的算法
教学内容:
1.多维数组(领会)
1.1 多维数组的逻辑结构特征
1.2 多维数组的顺序存储结构及地址计算方式
培养和训练对算法的复杂性的分
析能力以及选择合适的数据结构对简单的应用问题进行有效算法的设计能力
课时分配:自学136学时
集中面授34学时
绪论
教学要求:
要求掌握数据结构中常用的各种基本概念和术语
掌握算法描述和分析方法
重点掌握数据
结构的逻辑结构、存储结构及数据运算三方面的概念及相互关系
《数据结构》教学大纲

《数据结构》教学大纲课程名称:数据结构(Data Structures)课程代码:1421007009学分/总学时:4/90开课单位:计算机科学与工程学院面向专业:计算机科学与技术、信息管理、计算机科学与技术(师范)一、课程的性质、目的和任务《数据结构》是计算机科学与技术专业及相关专业的一门专业必修课。
《数据结构》的研究不仅涉及到计算机硬件(特别是编码理论、存储装置和存取方法等)的研究范围,而且和计算机软件的研究有着更密切的关系,无论是编译程序还是操作系统,都涉及到数据元素在存储器中的分配问题。
在研究信息检索时也必须考虑如何组织数据,以便查找和存取数据元素更为方便。
因此,可以认为《数据结构》是介于数学、计算机硬件和计算机软件三者之间的一门核心课程,在计算机科学中,数据结构不仅是一般程序设计(特别是非数值计算的程序设计)的基础,而且是设计和实现编译程序、操作系统、数据系统及其它系统程序和大型应用程序的重要基础。
《数据结构》课程作为计算机相关专业重要的主干课程,它要求学生学会分析和研究需解决的问题中的数据的特性,为其选择合适的数据结构来描述,在此数据结构的基础上写出相应的算法,并初步掌握算法的时间复杂度和空间复杂度的分析技术。
另一方面,通过本课程的学习,培养和训练学生编写复杂程序的能力,要求编写的程序结构清楚、正确易读,符合软件工程的规范,使学生的编程能力有一个质的提高。
二、学习本课程学生应掌握的前设课程知识本课程的先行课程有:《计算机导论》、《高级语言程序设计》、《离散数学》。
三、学时分配四、课程内容和基本要求1.绪论(2+2学时)[1]数据结构中的基本概念和术语[2]抽象数据类型[3]算法与算法分析基本要求:熟悉数据结构中各名词、术语的含义,掌握其基本概念;理解数据类型和抽象数据类型的含义;理解算法五个要素的确切含义,注意算法与程序的区别;掌握计算语句频度和估算算法时间复杂度的方法。
2.线性表(8+6学时)[1]线性表的概念[2]线性表的顺序存储和实现[3]线性表的链式存储和实现[4]循环链表和双向链表[5]线性表的具体应用基本要求:了解线性表的逻辑结构特性是数据元素之间存在着线性关系,在计算机中表示这种关系的两类不同的存储结构是顺序存储结构和链式存储结构;熟练掌握这两类存储结构的描述方法,以及线性表的各种基本操作的实现;能够从时间和空间复杂度的角度综合比较线性表两种存储结构的不同特点及其适用场合;掌握用线性表来表示一元多项式的方法及相应操作的实现。
030731002《数据结构》教学大纲

《数据结构》课程教学大纲课程代码:030731002课程英文名称:Data Structures课程总学时:48 讲课:40 实验:8 上机:0适用专业:电子信息科学与技术大纲编写(修订)时间:2010.7一、大纲使用说明(一)课程的地位及教学目标数据结构是电子信息科学与技术专业的一门专业基础必修课,是主干课。
课程主要讨论现实世界中数据的各种逻辑结构、在计算机中的存储结构以及各种算法的设计问题。
通过本课程的学习,使学生掌握组织数据、存储数据以及处理数据的基本概念和软件设计的基本方法,培养学生程序设计能力,提高程序设计兴趣,为后续专业课的学习打下坚实的基础。
(二)知识、能力及技能方面的基本要求通过本课程的学习,在基础方面,要求学生掌握常用数据结构的基本概念及其不同的实现方法;在技能方面,能够在不同存储结构上实现不同的运算,对不同的问题选择不同的数据结构,并对算法设计的方式和技巧有所体会,学生应用此能力能完成将一个具体的问题进行抽象地表示的任务。
(三)实施说明本课程主要包括基于不同数据结构的“算法思想设计”和“编程实现”两部分,要求学生理论和实际相结合,不仅要学会较为复杂的数据结构的设计,而且要求在计算机上编程实现。
教学中首先要使学生理解不同数据结构的逻辑关系,通过较多的实例说明它们的作用和应用背景,再通过大量的编程练习,使学生掌握数据结构和算法的设计和实现,进一步提高程序设计的能力。
(四)对先修课的要求本课程的教学必须在完成先修课程之后进行。
本课程主要的先修课程是C语言程序设计。
(五)对习题课、实践环节的要求1.对重点、难点章节(如:算法分析、线性表的应用、栈和队列的应用、树的应用、图的应用、排序的应用等)应安排习题课,习题课重点在于引导学生牢固掌握基本数据结构及其实现,并利用数据结构的知识解决常见实际问题,故采取精讲多练,用以解决实际问题为目的。
2.课后布置适量的作业,适时反馈作业问题。
学生必须独立、按时完成课外习题和作业,作业的完成情况应作为评定课程成绩的一部分。
《数据结构》课程标准

《数据结构》课程标准课程名称:数据结构课程代码:3250619适用专业:软件技术专业(软件开发方向)课程性质:专业必修课学时:48学时(理论:24 实践: 24)学分:3学分一、课程概述(一)课程的地位和作用《数据结构》是软件技术专业(软件开发方向)的一门专业必修课。
课程的前导课程是《Java面向对象编程》,本课程在后续软件开发类课程中起着非常重要的作用,其知识的应用将贯穿于本专业的所有课程。
在程序设计中,一个好的程序无非是选择一个合适的数据结构和好的算法,而好的算法的选择很大程度上取决于描述实际问题的数据结构的选取。
所以,学好数据结构,将是进一步提高学生程序设计水平的关键之一。
数据结构的应用水平是区分软件开发、设计人员水平高低的重要标志之一,缺乏数据结构和算法的深厚功底,很难设计出高水平的具有专业水准的应用程序。
本课程的改革理念是,坚持工程化、实用化教学,密切适应计算机技术的发展趋势,坚持学以致用;解决抽象理论与实践相脱节现象,让绝大多数学生在有限的时间内迅速掌握课程的基本理论知识,并把理论知识应用到软件开发的实际工作中,开发出高质是的应用软件。
(二)课程设计思路课程资源建设遵循三个原则、一个过程、四个应用层次。
课程内容的选取遵循科学性原则,课程内容的选取依据数据结构课程在学科体系的理论体系,结合其在实际开发中的使用频度及难易程度,选取适合高职学生的学习内容;课程内容的组织遵循情境性原则,所有模块的内容按一个过程进行组织。
课程内容置于由实践情境建构的以软件开发过程主要逻辑为主线的行动体系之中,采用打碎、集成的思想,将学科体系中所涉及的概念、方法、原理打碎,然后按照软件开发过程逻辑重新集成。
课程资源的建设充分体现人本性原则,按人类掌握知识的基本规律“获取—>内化—>实践—>反思—>新的获取”,开发四个实践层次“验证性应用、训练性应用、设计性应用、创造性应用”的训练题库。
二、培养目标(一)总体目标《数据结构》课程以培养学生的数据抽像能力和复杂程序设计的能力为总目标。
《数据结构》课程教学大纲

《数据结构》课程教学大纲课程编号:0806302024课程名称:数据结构英文名称:Data Structure课程类型:专业基础必修课总学时:72 讲课学时:56 上机学时:16学时:72学分:4.5适用对象:计算机科学与技术专业本科生先修课程:计算机导论、C/C++程序设计I、C/C++程序设计II、离散数学一、课程性质、目的和任务数据结构是计算机学科各专业本科学生必修的一门专业基础课,是计算机程序设计的重要理论和实践基础,是培养学生软件设计能力的一门重要课程,在计算机学科的本科教学中,起着非常重要的作用。
本课程研究计算机系统中常用的线性表、二叉树、图等典型数据结构的设计方法,研究各种典型排序和查找算法的设计方法和性能指标,并介绍这些数据结构和算法在实际工程中的应用。
通过学习本课程,使学生深入理解软件设计的基本要素和基本结构,培养逻辑思维能力,提高程序设计能力。
数据结构课程是一门理论和实践相结合的课程,上机实验、课程设计等实践性环节必不可少。
二、教学基本要求本课程是理论与实践并重的课程,要求学生既要掌握数据结构的基础理论知识,又要掌握操作计算机和运行、调试程序的基本技能;能够熟练运用C/C++语言或其它计算机语言编制具有中等难度的应用程序,在实践中培养独立分析问题和解决问题的作风和能力。
本课程的基本要求如下。
理解线性表、栈、队列、串、数组、树、二叉树、图等基本的数据逻辑结构,掌握描述这些数据结构、选择合适的存储结构和实现各种操作的方法。
熟练运用C/C++语言或其它计算机语言表达链式存储结构;熟练运用递归函数表达递归定义、递归算法和递归结构。
理解插入、交换、选择、归并等多种典型排序算法的思想,掌握在线性表、树等各种不同数据结构中的查找算法。
掌握在计算机语言环境中编辑、编译、运行程序的方法,以及单步运行、设置断点、查看变量运行时值等调试程序的方法。
三、教学内容及要求1.绪论①了解数据结构的基本概念,了解数据的逻辑结构、数据的存储结构和对数据的操作,了解抽象数据类型与数据结构的关系。
数据库系统与设计HTH课程编号63130301

数据库系统与设计 〖HTH〗课程编号:63130301类〓〓别:函数层〓〓次:专升本讲课学时:28自学学时:112实验学时:6 〖HT〗〖BT1〗一、本课程的地位、作用和任务(一)本课程性质和目的数据是原国家教育委员会拟定的全日制高等院校计算机及应用专业本科教学大纲制订的一门专业基础课。
本课程设置的目的是为了本科生掌握数据库的基本原理和技术,能应用现有的数据库管理系统,掌握数据结构的设计和数据库应用系统的开发方法。
数据库技术是计算机软件科学的一个重要分支,它研究如何存储、使用和管理数据,有较强的理论性和实用性。
随着计算机应用的发展,数据库应用领域已从数据处理、数据管理、事务处理扩大到计算机辅助设计、人工智能、办公信息系统等新的领域。
(二)本课程的基本要求1 了解与掌握数据管理技术的发展过程,数据库系统的基本概念、体系结构和全局结构。
2 掌握关系模型的关系运算理论,关系数据库SQL语言的全貌和使用技巧。
3 了解与掌握关系数据库的规范化理论以及数据库设计的全过程,能进行数据库结构的设计和能够运用课程中规定的少量知识点,分析和解决一般的应用问题。
如编写简单的SQL语句,计算关系代数表达式的值等。
系统的设计。
4 了解数据库系统的保护措施。
5 了解分布式数据库及具有面向对象特征的数据库的基本概念。
〖BT1〗二、对先修课的要求1 本课程的先修课程为高级语言程序设计和数据结构、离散数学、计算机原理等。
2 本课程的直接后续课为软件工程,信息工程的核心是数据库,而信息系统的开发要用到软件工程方法和软件开发工具。
所以,这两门课有着相当密切的联系,并且是以后开发应用系统的基础。
〖BT1〗三、教学内容及学时安排本课程的主要内容有数据库系统的基本理论和基本知识、数据库系统的组成数据库系统设计方法等内容。
本课程的主要章节有:第一章〓绪论(共2学时)课程的研究对象、内容、课程的性质、任务、特点和学习方法、数据库、信息数据、数据处理、系统、信息结构、联系等有关基础知识。
数据结构课程标准(软件)

《数据结构》课程标准一、前言《数据结构》是计算机科学中一门综合性的专业技术基础课,也是计算机科学技术应用专业的必修课程,为计算机专业技术人员提供必要的专业基础知识和技能训练,同时也是计算机应用相关学科所必须掌握的课程。
通过本课程的学习,使学生熟练掌握计算机程序设计中常见的各种数据的逻辑结构、存储结构及相应的运算,初步掌握算法的时间分析和空间分析的技术,并能根据计算机加工的数据特性运用数据结构的知识和技巧设计出更好的算法和程序,并进一步培养基本的良好的程序设计能力。
(一)课程基本信息1.课程名称:数据结构2.课程类别:专业核心课程3.课程编码:4.学时:605.适用专业:软件技术(二)课程性质本课程为计算机专业技术人员提供必要的专业基础知识和技能训练,同时也是计算机应用相关学科所必须掌握的课程。
通过本课程的学习,使学生熟练掌握计算机程序设计中常见的各种数据的逻辑结构、存储结构及相应的运算,初步掌握算法的时间分析和空间分析的技术,并能根据计算机加工的数据特性运用数据结构的知识和技巧设计出更好的算法和程序,并进一步培养基本的良好的程序设计能力。
(三)课程标准的设计思路1.课程设置的依据本课程标准从计算机软件技术及应用技术专业的视角出发,以满足本专业就业岗位所必须具备的计算机软件技术基础知识为基础,教学内容设计通过岗位工作目标与任务分析,分解完成工作任务所必备的知识和能力,采用并列和流程相结合的教学结构,构建教学内容的任务和达到工作任务要求而组建的各项目,以及教学要求和参考教学课时数。
通过实践操作、案例分析,培养学生的综合职业能力,基本达到程序员级职业技能鉴定标准。
2.课程改革的基本理念以培养学生如何合理地组织数据、有效地存储和处理数据,正确地设计算法以及对算法进行的分析和评价的能力,学会数据的组织方法和实现方法,并进一步培养基本的良好的程序设计能力。
3.课程目标、内容制定的依据基本依据是该门课程涉及的工作领域和工作任务范围,但在具体设计过程中还以数据结构开发应用与典型的项目为载体,使工作任务具体化,并依据完成工作任务的需要、职业院校学习特点和职业能力形成的规律,遵循“学历证书与职业资格证书嵌入式教学”的设计要求确定课程的知识、技能等内容,产生了具体的项目模块。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据结构课程编号:22050305类〓〓别:夜大学层〓〓次:专科授课学时:50一、本课程的地位、作用和任务《数据结构与算法》是计算机科学与技术各专业及其相关的一门专业基础课。
是计算机科学与技术各专业的课程体系中的核心课程之一。
是设计和实现编译程序、操作系统、数据库系统和其他系统软件和应用软件的重要基础。
通过本课程的学习,使学生较全面地掌握各种常用的数据结构,为学习后续软件课程提供必要的基础,提高运用数据结构解决实际问题的能力。
课程的内容重点立足于基础知识和基础理论的传授和应用能力的培养。
从数据结构的逻辑结构、存储结构和数据的运算三个方面掌握线性表、树、二元树、图和文件等常用的数据结构。
掌握在各种常用数据结构上实现的查找和排序算法。
对算法的时间和空间复杂性有一定的分析能力。
针对简单的应用问题,能够选择合适的数据结构设计有效的算法。
二、对先修课的要求(与相关课程的联系)本课程的先修可称为离散数学和高级语言程序设计,后续可称为操作系统、数据库系统原理和编译原理等。
数据结构中的存储结构及基本运算的实现需要程序设计的基本知识和编程能力和经验,本课程大部分实例和实验均是用C语言实现的,故要求叫熟练地掌握C语言。
三、选用的教材及参考书教材选用《数据结构与算法》,大连理工大学出版社,作者郭福顺、廖明宏等。
参考书为《数据结构(C语言版》,清华大学出版社出版,严蔚敏、吴伟民编著。
四、教学内容及课时分配以线性表、树、二元树、图和文件等常用的数据结构的逻辑结构、存储结构和数据的运算以及各种常用数据结构上实现的查找和排序算法为主要内容,培养和训练对算法的复杂性的分析能力以及选择合适的数据结构对简单的应用问题进行有效算法的设计能力。
课时分配:讲授50学时绪论教学要求:要求掌握数据结构中常用的各种基本概念和术语,掌握算法描述和分析方法。
重点掌握数据结构的逻辑结构、存储结构及数据运算三方面的概念及相互关系,难点是算法复杂性的分析方法。
教学内容:1.数据结构的基本概念和术语(识记)1.1 数据、数据元素、数据项、数据结构等基本概念。
1.2 数据结构的逻辑结构、存储结构及数据运算的含义及其相互关系。
1.3 数据结构的两大类逻辑结构和四种常用的存储表示方法。
2.数据结构在软件系统中的作用(识记)。
2.1 数据结构在各种软件系统中所起作用。
2.2 选择合适的数据结构是解决应用问题的关键步骤。
3.算法的描述和分析(领会)3.1算法、算法的时间复杂度和空间复杂度、最坏的和平均的时间复杂度等概念。
3.2算法的时间复杂度不仅仅依赖于问题的规模,也取决于输入实例的初始状态。
3.3算法描述和算法分析的方法,对于一般算法能分析出时间复杂度。
学时要求:4个学时线性表教学要求:本章目的是介绍线性表的逻辑结构和各种存储表示方法,以及定义在逻辑结构上的各种基本运算及其在存储结构上如何实现这些基本运算。
要求在熟悉这些内容的基础上,能够针对具体应用问题的要求和性质,选择合适的存储结构设计出相应的有效算法,解决与线性表相关的实际问题。
本章重点是熟练掌握顺序表和单链表上实现的各种基本算法及相关的时间性能分析,难点是能够使用本章所学到的基本知识设计有效算法解决与线性表相关的应用问题。
教学内容1.线性表的逻辑结构(识记)1.1 线性表的逻辑结构特征。
1.2 线性表上定义的基本运算,并能利用基本运算构造出较复杂的运算。
2.线性表的顺序存储结构(综合应用)2.1 顺序表的含义及特点,即顺序表如何反映线性表中元素之间的逻辑关系。
2.2 顺序表上的插入、删除操作及其平均时间性能分析。
2.3 利用顺序表设计算法解决简单的应用问题。
3.线性表的链式存储结构(综合应用)3.1 链表如何表示线性表中元素之间的逻辑关系。
3.2 链表中头指针和头结点的使用。
3.3 单链表、双链表、循环链表链接方式上的区别。
3.4 单链表上实现的建表、查找、插入和删除等基本算法,并分析其时间复杂度。
3.5 单循环链表以及单循环链表上的算法与单链表上相应算法的异同点。
3.6 双链表的定义及其相关的算法。
3.7 利用链表设计算法解决简单的应用问题。
4.顺序表和链表的比较(领会)4.1 顺序表和链表的主要优缺点。
4.2 针对线性表上所需要执行的主要操作,知道选择顺序表还是链表作为其存储结构才能取得较优的时空性能。
学时要求:4个学时栈和队列教学要求:本章目的是介绍栈和队列的逻辑结构定义及在两种存储结构上如何实现钱和队列的基本运算。
要求在掌握栈和队列的特点的基础上,懂得在什么样的情况下能够使用栈或队列。
本章重点是掌握栈和队列在两种存储结构上实现的基本运算,难点是循环队列中对边界条件的处理。
教学内容:1.栈的逻辑结构、存储结构及其相关算法(综合应用)1.1 栈的逻辑结构特点,栈与线性表的异同。
1.2 顺序栈和链钱上实现的进栈、退栈等基本算法。
1.3 栈的“上溢”和“下溢”的概念及其判别条件。
1.4 利用栈设计算法解决简单的应用问题。
2.队列的逻辑结构、存储结构及其相关算法(综合应用)2.1 队列的逻辑结构特点,队列与线性表的异同。
2.2 顺序队列(主要是循环队列)和链队列上实现的人队、出队等基本算法。
2.3 队列的“上溢”和“下溢”的概念及其判别条件。
2.4 使用数组实现的循环队列取代普通的顺序队列的原因。
2.5 循环队列中对边界条件的处理方法。
2.6 利用队列设计算法解决简单的应用问题。
3.栈和队列的应用(领会)栈和队列的特点,什么样的情况下能够使用栈或队列。
学时要求:4个学时串教学要求:本章目的是介绍串的逻辑结构、存储结构及其中上的基本运算,由于C语言及其它高级语言均已具备了较强的串处理功能,故本章重点是掌握串上实现的模式匹配算法,这也是本章的难点。
教学内容:1.串及其运算(领会)1.1 串的有关概念及基本运算。
1.2 串与线性表的关系。
2.串的存储结构(简单应用)2.1 串的两种存储表示。
2.2 串上实现的模式匹配算法及其时间性能分析。
2.3 使用C语言提供的串操作函数构造与串相关的算法解决简单的应用问题。
学时要求:1个学时多位数组和广义表教学要求:本章目的是介绍多级数组的逻辑结构特征及其存储方式,特殊矩阵和稀疏短阵的压缩存储方法及广义表的概念和性质,要求熟悉这些内容。
本章重点是熟悉多级数组的存储方式、短阵的压缩存储方式、广义表的定义及其性质,难点是稀疏短阵的压缩存储表示下实现的算法。
教学内容:1.多维数组(领会)1.1 多维数组的逻辑结构特征。
1.2 多维数组的顺序存储结构及地址计算方式。
1.3 数组是一种随机存取结构的原因。
2.短阵的压缩存储(领会)2.1 特殊矩阵和疏稀矩阵的概念。
2.2 特殊矩阵和压缩存储时的下标变换方法。
2.3 稀疏矩阵的三元组表表示方法及有关算法。
3.广义表的概念(领会)3.1 广义表的有关概念及其与线性表的关系。
3.2 广义表的性质学时要求:1个学时树教学要求:本章目的是二元树的定义、性质、存储结构、遍历、线索化,树的定义、存储结构、遍历、树和森林与二元树的转换,哈夫曼树及其应用(优化判定过程和哈夫曼编码)等内容。
要求在熟悉这些内容的基础上,重点掌握二元树的遍历算法及其有关应用,难点是使用本章所学到的有关知识设计出有效算法,解决与树或二元树相关的应用问题。
教学内容1.树的概念(领会)1.1 树的逻辑结构特征。
1.2 树的不同表示方法。
1.3 树的常用术语及含义。
2.二元树(简单应用)2.1 二元树的递归定义及树与二元树的差别。
2.2 二元树的性质,了解相应的证明方法。
2.3 二元树的两种存储方法、特点及适用范围。
3.二元树的遍历(综合应用)3.1 二元树的三种遍历算法,理解其执行过程。
3.2 确定三种遍历所得到的相应的结点访问序列。
3.3 以遍历算法为基础,设计有关算法解决简单的应用问题。
4.线索二元树(领会)4.1 二元树线索化的目的及实质。
4.2 在中序线索树中查找给定结点的中序前趋和中序后继的方法。
4.3 查找给定结点的前序前趋和后序后继并非有效的原因。
5.树和森林(领会)5.1 树和森林与二元树之间的转换方法。
5.2 树的各种存储结构及其特点。
5.3 树的遍历方法。
6.哈夫曼树及其应用(简单应用)6.1 最优二元树和最优前缀码的概念及特点。
6.2 哈夫曼算法的思想。
6.3 根据给定的叶结点及其权值构造出相应的最优二元树。
6.5 利用哈夫曼树优化判定过程。
6.5 根据最优二元树构造对应的哈夫曼编码。
学时要求:12个学时图教学要求:本章目的是介绍图的基本概念、两种常用的存储结构、两种遍历算法以及图的应用算法,要求在熟悉这些内容的基础上,重点掌握图的两种存储结构上实现的遍历算法。
本章难点是图的应用算法:求最小生成树,求单源最短路径以及拓扑分类,要求掌握这些算法的基本思想及时间性能。
教学内容:1.图的概念(领会)1.1 图的逻辑结构特征。
1.2 图的常用术语及含义。
2.图的存储结构(简单应用)2.1 邻接矩阵和邻接表这两种存储结构的特点及适用范围。
2.2 根据应用问题的特点和要求选择合适的存储结构。
3.图的遍历(简单应用)3.1 连通图及非连通图的深度优先搜索和广度优先搜索两种遍历算法,其执行过程以及时间复杂性分析。
3.2 确定两种遍历所得到的顶点访问序列。
3.3 图的两种遍历与树的遍历之间的关系。
.3.4 两种遍历所使用的辅助数据结构(钱或队列)在遍历过程中所起的作用。
3.5 利用图的两种遍历设计算法解决简单的应用问题。
4.生成树和最小生成树(领会)4.1 生成树和最小生成树的概念。
4.2 对遍历给定的图,画出深度优先和广度优先生成树或生成森林。
4.3 Prim和Kruskal算法的基本思想、时间性能及这两种算法各自的特点。
4.4 要求对给定的连通图,根据Prim和Kruskal算法构造出最小生成树。
5.最短路径(领会)最短路径的含义;5.2 求单源最短路径的Dijkstra算法的基本思想和时间性能。
5.3 对于给定的有向图,根据Dijkstra算法画出求单源最短路径过程示意图。
6.拓扑排序(领会)6.1 拓扑排序的基本思想和步骤。
6.2 拓扑排序不成功的原因。
6.3 对给定的有向图,若拓扑序列存在,则要求写出一个或多个拓扑序列。
学时要求:10个学时查找教学要求:本章目的是介绍线性表、树和散列表的查找方法、算法实现以及各种查找方法的时间性能(平均查找长度)分析。
在熟悉这些内容的基础上,重点掌握顺序查找、二分查找,二元查找树上查找以及散列表上查找的基本思想和算法实现。
本章难点是二元查找树的删除算法。
教学内容:1.基本概念(识记)1.1 查找在数据处理中的重要性。
1.2 查找算法效率的评判标准。
2.线性表的查找(简单应用)顺序查找、二分查找、分块查找的基本思想、算法实现和查找效率分析。