二级基础知识教案.docVIP

  • 3
  • 0
  • 约3.98千字
  • 约 5页
  • 2017-06-04 发布于河南
  • 举报
二级基础知识教案

附: 二级基础知识 二级基础知识在笔试中占30%的题量。其中:选择题10题,共20分;填空题5题,占10分。望读者能对这一部分知识引起足够的重视。 1.1 学习目标与要求 考生在本章应该掌握的内容包括: 1. 算法的基本概念,数据结构的基本概念及其定义,线性表及其基本运算,栈和队列及其基本运算,线性链表及其基本运算,二叉树的基本概念、存储结构及其遍历,最后还介绍了几种常用的查找与排序算法。 2.程序设计方法与风格,结构化程序设计,面向对象的程序设计方法,对象,方法,属性及继承与多态性。 3.软件工程基本概念,结构化分析方法,结构化设计方法,软件测试的基本方法,程序的调试方法。 4.数据库,数据库管理系统,数据库系统的基本概念,数据模型,实体联系模型及E—R图等基本概念,关系代数理论中的基本运算,数据库设计的基本方法和步骤。 1.2 内 容 要 点 第一章 数据结构与算法 一、算法 程序设计主要包括两个方面:一是行为特性的设计,二是结构特性的设计。前者是对程序中的每一个细节加以定义和描述,后者是指所确定的数据结构。 算法的基本特征:可行性、确定性、有穷性等 算法的基本要素:(1)数据对象的运算和操作。有算术运算、逻辑运算、关系运算和数据传输四类。 (2)算法的控制结构。有顺序、选择、循环三类。 算法的基本方法:列举法、归纳法、递推法、递归法、回溯法等。 算法的复杂度:包括时间复杂度和空间复杂度。 时间复杂度――执行算法所需要的计算工作量f(n)(n指问题的规模)。 例如:(在长度为n的一维数组中查找值为x的数组元素,则 平均时间复杂度为(n+1)/2,最坏时间复杂度为n。 ( 在长度为n的一维数组中删除值为x的数组元素,则 平均时间复杂度为(n-1)/2,最坏时间复杂度为n-1,最佳时间复杂度为0。(1+2+。。。+n-1)/n((n-1)/2 (在长度为n的一维数组中插入值为x的数组元素,则最坏时间复杂度为n,最佳时间复杂度为0,平均时间复杂度为n/2,。(0+1+2+。。。+n)/(n+1)(n/2 (在冒泡排序与选择排序中最坏情况下的时间复杂度为n(n-1)/2。 空间复杂度――执行这个算法所需要的辅助内存空间的大小。 若算法所需要的辅助内存空间的大小不随问题规模的增大而增大,则称该算法的空间复杂度为最小,即原地工作。 t=a[j];a[j]=a[j+1];a[j+1]=t; 二、数据结构 数据结构所研究的内容:数据的逻辑结构(线性结构与非线性结构)、数据的存储结构(顺序存储与链式存储)和对数据结构的运算。 其有数据的逻辑结构和数据的存储结构。 数据的逻辑结构在计算机存储空间中的存放形式称为数据的存储结构。常用的存储结构有:顺序、链接、索引等。 数据结构中,没有前件的结点为根结点(起始结点),没有后件的结点为叶子结点(终止结点)。 春(夏(秋(冬 数据逻辑结构通常分为两大类:线性结构和非线性结构。 线性结构又称线性表,其特点是: ①有且只有一个根结点; ②每一个结点最多有一个前件,也最多有一个后件。 三、线性表及其顺序存储结构(数组) 顺序存储的线性表(顺序表)的特点: (1)所有元素所占据的存储空间是连续的; (2)各数据元素在存储空间中是按逻辑顺序依次存放的。 四、栈和队列(是对插入与删除有特殊规定的线性表。 栈(Stack)是限制在同一端进行插入和删除的线性表。 允许插入和删除的一端称为栈顶(top)。栈顶元素总是最后被插入的元素,也是最先能被删除的元素。因此,栈是按照“先进后出FILO”的原则组织数据,且具有记忆作用。 栈顶是变化的(随入栈上升,随出栈下降),栈底是固定的。 队列(Queue)是允许在一端插入、而在另一端进行删除的线性表。 允许插入的一端称为队尾(rear),删除的一端称为队头(front)。队尾元素总是最后被插入的元素,也是最后能被删除的元素。因此,队列是按照“先进先出FIFO”的原则组织数据。 五、线性链表 在链式存储方式中,每个结点有两部分组成:数据域和指针域。用一个专门的指针HEAD指向第一个结点,最后一个结点的指针域为空(NULL)。各数据结点的存储序号是不连续的。 六、树与二叉树 树是简单的非线性结构。其每一个结点可以有多个后件。一个结点所拥有的后件个数称为该结点的度。所有结点中的最大的度称为树的度。树的层数称为树的深度。 二叉树:每一个结点的度最大为2。 满二叉树:除最后一层外,每一层上的所有结点都有两个子结点。 深度为k的满二叉树结点总数为2k-1 深度为k的满二叉树中叶子结点总数为2k-1 完全二叉树:在深度为n的二叉树

文档评论(0)

1亿VIP精品文档

相关文档