第一章 绪论
1、理解什么是数据、数据对象、数据元素、数据结构、数据的逻辑结构与物理结构等基本术语以及逻辑结构与物理结构之间的关系。
2、熟悉用C++语言描述算法,能够用C++语言编写程序。
3、理解算法的定义、算法的特性、算法的时间代价和空间代价。
第二章 线性表
1、理解线性表的逻辑结构特性。
2、熟练掌握线性表的顺序存储的定义和基本算法(搜索、插入、删除)的实现。
3、理解线性表的链接存储的定义。
4、熟练掌握线性表的基本算法(搜索、插入、删除)在单链表上的实现。
重点:熟练掌握线性表的基本算法。
第三章 稀疏矩阵和广义表
1、了解稀疏矩阵的两种存储方式和基本算法(输入、建立、转置、相加等)的实现。
2、了解广义表的概念、定义、表示及存储结构的实现。
3、了解广义表的的访问算法和递归(求长度、深度、建立、输出等)算法。
第四章 栈和队列
1、理解栈的定义、特性。
2、掌握栈的两种存储结构。
3、熟练掌握栈的基本(入/出栈)算法,特别注意栈空、栈满的条件。
4、理解队列的定义、特性。
5、掌握队列的两种存储结构。
6、熟练掌握队列的基本(进/出队)算法,特别注意队首、队尾的指针的变化。
重点:熟练掌握栈的出入栈算法和队列的出入队算法。
第五章 树
1、理解树的定义、树的术语和树的性质。
2、深刻理解二叉树的定义、性质、存储结构。
3、掌握二叉树的中序遍历、前序遍历和后序遍历的算法。
4、掌握二叉树的典型运算,如求二叉树的深度,建立、清除、输出二叉树等。
5、了解线索二叉树的特性,理解中序线索二叉树中寻找某节点的前驱和后继的方法。
6、理解二叉树排序树的定义、特性。
7、熟练掌握二叉树排序树的基本算法(插入、删除、查找、更新)。
8、掌握哈夫曼树的实现方法、构造哈夫曼编码的方法及带权路径长度的计算。
重点:掌握二叉树的定义、基本性质,熟练掌握二叉树排序树的基本算法。
第六章 图
1、理解图的基本概念、术语。
2、熟练掌握图的存储表示邻接矩阵、邻接表。
3、了解图的深度和广度优先算法及非连通图的遍历算法思想。
4、了解构造最小生成树的普里姆算法和克鲁斯卡尔算法思想。
5、了解求最短路径的Dijkstra算法思想。
6、了解求解关键路径的方法。
重点:熟练掌握图的存储表示并了解图的各种应用的算法思想。
第七章 查找
1、理解查找的基本概念。
2、熟练掌握顺序表查找的基本方法(顺序查找、二分查找)。
3、掌握静态索引结构以及查找、构造的基本算法。
4、理解散列的概念,了解散列函数的构造、解决冲突的方法。
5、掌握动态索引结构(包括平衡树、B-树)的基本思想。
6、了解B-树的查找、插入和删除的算法思想。
重点:熟练掌握顺序表查找的算法并理解静态/动态索引结构的特点。
第八章 排序
1、理解排序的基本概念和性能分析方法。
2、掌握插入排序(直接插入排序)、选择排序(直接选择排序、堆排序)、交换排序(气泡排序、快速排序)、归并排序等典型的排序算法及性能分析。
3、了解多路平衡归并等外排序方法及构造败者树的基本方法。
重点:熟练掌握内排序的典型算法及其性能分析。
《C++语言程序设计》考试大纲
作为计算机专业的一门重要的专业基础课,《C++语言程序与设计》课程的特点表现为:一是支持面向对象的程序设计;二是支持传统的面向过程的程序设计。
考试要求:
在理解和掌握C++语言的基本语法和语义、理解面向对象的思想、掌握计算机程序设计概念体系的基础上,必须:
1、掌握面向过程的程序设计方法。
2、掌握面向对象程序设计的方法。
3、具有较强的编程能力、分析问题能力以及解决实际问题的能力。
考试内容:程序设计
包括:面向过程的程序设计和面向对象的程序设计。
涉及的概念和具体内容有:运算符、表达式、过程化语句、函数、类与对象(构造与析构函数、拷贝构造函数)、继承与多态性、引用、指针、数组、顺序表、链表、模板(类模板与函数模板)、I/O流。
评论0
“无需登录,可直接评论...”