第4章 递归算法
- 格式:ppt
- 大小:413.00 KB
- 文档页数:48


算法与生活教案章节一:引言教学目标:1. 让学生了解算法在生活中的重要性。
2. 培养学生对算法的兴趣和好奇心。
教学内容:1. 介绍算法的定义和特点。
2. 举例说明算法在生活中的应用。
教学步骤:1. 引入话题:讨论日常生活中遇到的问题,如排序、查找等。
2. 介绍算法的定义:算法是解决问题的一系列步骤。
3. 讲解算法的特点:有穷性、确定性、可行性。
4. 举例说明算法在生活中的应用:地图导航、购物网站推荐等。
章节二:排序算法教学目标:1. 让学生了解排序算法的概念和作用。
2. 培养学生掌握排序算法的应用。
教学内容:1. 介绍排序算法的定义和分类。
2. 讲解冒泡排序算法的基本思想和步骤。
3. 分析冒泡排序算法的优缺点。
教学步骤:1. 引入话题:讨论日常生活中遇到的排序问题。
2. 介绍排序算法的定义:将一组数据按照特定顺序排列的算法。
3. 讲解冒泡排序算法:比较相邻元素,交换位置,重复执行直到排序完成。
4. 演示冒泡排序算法的实现。
5. 分析冒泡排序算法的优缺点:简单易懂,但效率较低。
章节三:查找算法教学目标:1. 让学生了解查找算法的概念和作用。
2. 培养学生掌握查找算法的应用。
教学内容:1. 介绍查找算法的定义和分类。
2. 讲解线性查找算法的基本思想和步骤。
3. 分析线性查找算法的优缺点。
教学步骤:1. 引入话题:讨论日常生活中遇到的查找问题。
2. 介绍查找算法的定义:在一组数据中查找特定元素的过程。
3. 讲解线性查找算法:从数据的一端开始,逐个比较直到找到或遍历完。
4. 演示线性查找算法的实现。
5. 分析线性查找算法的优缺点:简单易懂,但效率较低。
章节四:递归算法教学目标:1. 让学生了解递归算法的概念和特点。
2. 培养学生掌握递归算法的应用。
教学内容:1. 介绍递归算法的定义和特点。
2. 讲解递归算法的实现和应用。
3. 分析递归算法的优缺点。
教学步骤:1. 引入话题:讨论日常生活中遇到的可以分解为更小问题的问题。
数据结构自考第四章树历年试题 1 第四章树一、单项选择题201101--2.树形结构中,度为0的结点称为( )A.树根B.叶子C.路径D.二叉树201101--9.二叉树的第i(i≥1)层上所拥有的结点个数最多为( )A.2iB.2iC.2i-1D.2i-1201101--14.如果结点A有3个兄弟结点,而且B为A的双亲,则B的度为( )A.1B.3C.4D.5201001--2.某二叉树的后根遍历序列为dabec,中根遍历序列为debac,则先根遍历序列为()A.acbedB.becabC.deabcD.cedba201001--3.含有n个结点的二叉树用二叉链表表示时,空指针域个数为( )A.n-1B.nC.n+1D.n+2200910--5.由带权为9,2,5,7的四个叶子结点构造一棵哈夫曼树,该树的带权路径长度为()A.23B.37C.44D.46200901--8.具有n个结点的二叉树,拥有指向孩子结点的分支数目是()A.n-1B.nC.n+1D.2n200901--9.对一棵有100个结点的完全二叉树按层序编号,则编号为49的结点,它的左孩子的编号为()A.99B.98C.97D.50200901--10.有m个叶子结点的哈夫曼树,其结点总数是()A.2m-1 B.2mC.2m+1D.2(m+1)200901--14.已知8个元素(34,76,45,18,26,54,92,65),按照依次插入结点的方法生成一棵二叉排序树,则该树的深度为()(根据新教材的内容应安排在查找)A.4B.5C.6D.7200810--8.含有n个结点的二叉树采用二叉链表存储时,空指针域的个数为()1A.n-1B.nC.n+1D.n+2200810--9.在一棵深度为H 的完全二叉树中,所含结点的个数不少于...( )A.2H-1-1B.2H-1C.2H -1D.2H200810--12.对一棵二叉排序树采用中根遍历进行输出的数据一定是( )A.递增或递减序列B.递减序列 C .无序序列 D.递增序列200801--8.某二叉树的先根遍历序列和后根遍历序列正好相反,则该二叉树具有的特征是( )A.高度等于其结点数B.任一结点无左孩子C.任一结点无右孩子D.空或只有一个结点200801--9.在完全二叉树中,若一个结点是叶结点,则它没有( )A.左孩子结点B.右孩子结点C.左孩子结点和右孩子结点D.左孩子结点,右孩子结点和兄弟结点 200801--12.若构造一棵具有n 个结点的二叉排序树,最坏的情况下其深度不超过( )A. B. n C. D. n+1200710--8.除根结点外,树上每个结点( )A.可有任意多个孩子、一个双亲B.可有任意多个孩子、任意多个双亲C.可有一个孩子、任意多个双亲D.只有一个孩子、一个双亲200710--9.题9图中树的度为( )A.2B.3C.5D.8题9图200701--10.高度为h 的完全二叉树中,结点数最多为( )A .2h-1 B.2h+1 C.2h -1 D.2h200701--11.由m 棵结点数为n 的树组成的森林,的树组成的森林,将其转化为一棵二叉树,将其转化为一棵二叉树,将其转化为一棵二叉树,则该二叉树中根结则该二叉树中根结点的右子树上具有的结点个数是( )A .mn B.mn-1 C.n(m-1) D.m(n-1)200610--8.含有10个结点的二叉树中,度为0的结点数为4,则度为2的结点数为( )A.3B.4C.5D.6200610--9.对一棵有100个结点的完全二叉树按层编号,则编号为49的结点,它的父结点的编号为()A.24B.25C.98D.99200610--10.可以惟一地转化成一棵一般树的二叉树的特点是()A.根结点无左孩子B.根结点无右孩子C.根结点有两个孩子D.根结点没有孩子200601--7.关于二叉树性质的描述,正确的是()A.二叉树结点的个数可以为0B.二叉树至少含有一个根结点二叉树至少含有一个根结点C.二叉树若存在两个结点,则必有一个为根,另一个为左孩子D.二叉树若存在三个结点,则必有一个为根,另两个分别为左、右孩子200601--8.具有4个结点的二叉树可有()A.4种形态B.7种形态C.10种形态D.11种形态200601--9.若采用邻接表存储结构,则图的深度优先搜索类似于二叉树的()A.先根遍历B.中根遍历C.后根遍历D.层次遍历二、填空题201101--23.在树形结构中,没有后继的结点是___________结点。
实验一(第1章实验)实验目的:1.掌握运行C语言程序的全过程。
2.熟悉编译环境。
3.初步熟悉C语言程序的语法规定。
4.了解简单函数的使用方法。
实验内容:1.编程且上机运行:求3个整数的和。
2.编程且上机运行:求2个数的和、差、积和商。
3.编程且上机运行:输入3个数,求最大值。
4.编程且上机运行:输入圆的半径,求圆的面积和周长。
5.在屏幕上输出:“hello world!”实验结果:实验二(第3章实验)1.实验目的:理解C语言的类型系统。
实验内容:写程序测试数据-2在类型char,int,unsigned int,long int,unsigned long int 中存储情况。
实验过程:实验结果:参见各种类型的存储实现描述。
2.实验目的:了解混合类型计算中类型的转换规则。
实验内容:写程序测试多种类型数据一起运算时类型的转换及表达式结果的类型。
注意unsigned int和int数据运算时类型转换的方向。
实验过程:/** 类型转换问题* 试问下面两个表达式等价吗?*/#include <stdio.h>#include <stdlib.h>int main() {unsigned int ui,uj;ui = 1;uj = 2;if (ui < uj)printf("\n%u < %u is true !\n", ui, uj);elseprintf("\n%u < %u is false !\n", ui, uj);if (ui - uj < 0)printf("\n%u - %u <0 is true !\n", ui, uj);elseprintf("\n%u - %u <0 is false !\n", ui, uj);system("pause");return 0;}实验结果:参见类型转换规则。