Dlypeq全国计算机等级考试二级公共基础知识点总结
- 格式:doc
- 大小:57.00 KB
- 文档页数:8
计算机二级公共基础知识总结第1篇数据库(DB)特点:集成共享数据库系统(DBS):包含数据库和数据库管理系统数据库管理系统(DBMS):数据库系统的核心数据库管理发展的三个阶段:人工管理阶段--文件系统阶段--数据库系统阶段数据库管理的特点:集成性高共享性低冗余性数据统一管理与控制体系结构:三级模式(有利于保持数据的独立性包括物理独立性和逻辑独立性):外模式概念模式内模式两级映射:外模式到概念模式概念模式到内模式数据模型的三要素:数据结构数据操作数据约束E-R模型:也成为实体联系模型,其三大基本概念有实体(矩形)、联系(菱形)、属性(椭圆形)联系类型:一对一一对多多对多关系模型:最常用用二维表来表示。
关系模型的完整性约束包括实体完整性约束、参照完整性约束和用户定义的完整性约束。
实体完整性约束是数据库完整性的最基本要求,他要求关系中主键的属性值不能为空;参照完整性约束是关系之间相关联的基本约束,它要求关系不能引用不存在的元组;用户定义的完整性约束由用户设置具体数据环境和应用环境的约束,它反映了具体应用数据的语义要求关系代数中最常用的运算xxx集合运算符和专门的关系运算符集合运算符:并∪交∩ 差 - 笛卡尔积 ×关系运算符:选择运算 \sigma 投影 \pi 连接运算⋈除运算(笛卡尔积的逆运算) ÷数据库的设计一般采用生命周期法,分为需求分析、概念设计、逻辑设计和物理设计四个阶段目前关系数据库有六种范式,考前三个(1)第一范式(1NF):数据库表中每一列的属性都不可再分(2)第二范式(2NF):首先满足第一范式,且实体的属性完全依赖于主键(3)第三范式(3NF):满足第二范式,且消除非主属性对主键的传递依赖考试方式1.公共基础知识不单独考试,与其他二级科目组合在一起,作为二级科目考核内容的一部分。
2.上机考试,10道单项选择题,占10分。
参考课程:计算机二级公共基础知识总结第2篇软件的定义:计算机软件是与计算机系统的操作有关的程序、规程、规则及任何与之有关的文档和数据它由两部分组成:一是机器可执行的——程序及有关数据二是机器不可执行的——与软件开发、运行、维护、使用等有关的文档软件工程的三个要素:方法、工具和过程软件生命周期:软件的生命周期是指软件产品从提出、实现、使用维护到停止使用退役的过程。
计算机二级公共基础知识总结计算机二级公共基础知识是计算机考试中的重要组成部分,涵盖了计算机的基本原理、操作系统、办公软件等方面的内容。
下面我将从多个层面对这部分知识进行总结。
一、计算机基本原理计算机基本原理是计算机二级公共基础知识的核心内容之一。
它包括计算机硬件组成、计算机内部原理、数据表示与运算等方面的知识。
在学习这部分知识时,我们要了解计算机的基本组成,比如中央处理器(CPU)、内存(RAM)、硬盘等,以及它们之间的工作原理和相互关系。
此外,我们还要了解数据在计算机中的表示和运算方式,例如二进制、十进制的转换,以及加法、减法、乘法和除法等基本运算。
二、操作系统操作系统是计算机二级公共基础知识中另一个重要的内容。
它是计算机的核心软件,负责管理和控制计算机的资源,提供用户与计算机硬件之间的接口。
学习操作系统的知识,我们需要了解操作系统的基本概念和功能,如进程管理、内存管理、文件系统等。
同时,我们还需要了解常见的操作系统,如Windows、Linux等,以及它们的特点和使用方法。
三、办公软件办公软件是计算机二级公共基础知识的另一重要方面。
它主要包括文字处理、电子表格和演示文稿等工具软件。
在学习办公软件时,我们需要熟悉各种常见软件的功能和使用方法,比如Microsoft Office套件中的Word、Excel和PowerPoint。
掌握办公软件的使用技巧,能够提高我们的工作效率,满足日常办公的需求。
四、网络基础知识网络基础知识是计算机二级公共基础知识中不可忽视的部分。
随着互联网的发展,计算机网络已经成为人们生活和工作的重要组成部分。
学习网络基础知识,我们需要了解网络的基本概念和协议,如IP地址、子网掩码、TCP/IP协议等。
此外,我们还需要了解网络安全和常见的网络攻击方式,以便能够保护我们的计算机和个人信息。
总结起来,计算机二级公共基础知识包括计算机基本原理、操作系统、办公软件和网络基础知识等多个方面。
计算机等级考试二级公共基础知识第1章数据结构与算法1.1 算法1.1.1 算法的基本概念算法是指对解题方案的准确而完整的描述。
简单地说,就是解决问题的操作步骤。
值得注意的是,算法不等于数学上的计算方法,也不等于程序。
在用计算机解决实际问题时,往往先设计算法,用某种表达方式(如流程图)描述,然后再用具体的程序设计语言描述此算法(即编程)。
在编程时由于要受到计算机系统运行环境的限制,因此,程序的编制通常不可能优于算法的设计。
1.1.1.1 算法的基本特征一般来说,一个算法应具有以下4个基本特征。
(1)可行性(Effectiveness):算法在特定的执行环境中执行,应当能够得出满意的结果,即必须有一个或多个输出。
(2)确定性(Definiteness):算法中的每一个步骤都必须有明确的定义,不允许有模棱两可的解释和多义性。
(3)有穷性(Finiteness):算法必需在有限时间内做完,即算法必需能在执行有限个步骤之后终止。
(4)拥有足够的情报:要使算法有效必需为算法提供足够的情报。
当算法拥有足够的情报时,此算法才是有效的;而当提供的情报不够时,算法可能无效。
1.1.1.2 算法的基本要素通常,一个算法由两种基本要素组成。
● 对数据对象的运算和操作;● 算法的控制结构,即运算或操作时间的顺序。
(1)算法中对数据的运算和操作在一般的计算机系统中,基本的运算和操作有以下4类,如表1-1所示。
(2一个算法的功能不仅仅取决于所选用的操作,而且还与各操作之间的执行顺序有关。
算法中各操作之间的执行顺序称为算法的控制结构。
算法的控制结构给出了算法的基本框架,它不仅决定了算法中各操作的执行顺序,而且也直接反映了算法的设计是否符合结构化原则。
描述算法的工具通常有传统流程图、N-S结构化流程图、算法描述语言等。
一个算法一般都可以用顺序、选择、循环3种基本控制结构组合而成。
1.1.1.3 算法设计的基本方法虽然设计算法是一件非常困难的工作,但是算法设计也不是无章可循,人们经过实践,总结和积累了许多行之有效的方法。
全国计算机二级公共基础知识汇总计算机二级公共基础知识是计算机专业人员必备的基本知识,包括计算机基本原理、操作系统、网络原理、数据库原理和计算机应用等方面的知识。
下面是全国计算机二级公共基础知识的完整汇总。
一、计算机基本原理:计算机硬件的组成和工作原理,包括中央处理器、存储器、输入输出设备等。
1.中央处理器:控制计算机的运算和控制活动,包括运算单元和控制单元。
2.存储器:计算机的主要组成部分,包括内存和外存。
3.输入输出设备:与计算机进行交互的设备,包括键盘、鼠标、显示器、打印机等。
二、操作系统:计算机的核心软件,负责管理和控制计算机的资源。
1.操作系统的功能:包括进程管理、内存管理、文件管理、设备管理和用户界面等。
2. 常见的操作系统:Windows、Linux、Unix等。
三、网络原理:计算机网络的基本原理和常用协议,包括网络拓扑、网络协议和安全性等。
1.网络拓扑:指网络中计算机的物理连接方式,包括星型、总线型、环型等。
2.网络协议:指计算机网络中不同计算机之间通信的规则和约定,常见的协议有TCP/IP、HTTP、FTP等。
3.网络安全性:指保护计算机网络不受到非法侵入和攻击的能力,包括防火墙、加密技术等。
四、数据库原理:数据库的基本原理和常用操作,包括数据模型、关系数据库和SQL语言等。
1.数据模型:指描述数据结构、数据操作和数据约束的概念工具,常见的数据模型有层次模型、网状模型和关系模型等。
2. 关系数据库:采用关系模型进行数据组织和管理的数据库,常见的关系数据库有Oracle、MySQL、SQL Server等。
3.SQL语言:结构化查询语言,用于对关系数据库进行查询、更新和管理。
五、计算机应用:计算机在不同领域应用的基本知识,包括办公软件、图像处理、网页设计等。
1.办公软件:包括文字处理、电子表格和演示文稿等。
3. 网页设计:指网页的布局、设计和开发,需要掌握HTML、CSS和JavaScript等技术。
第一章数据构造与算法1.1算法算法: 是指解题方案旳精确而完整旳描述。
算法不等于程序, 也不等计算机措施, 程序旳编制不也许优于算法旳设计。
算法旳基本特性:是一组严谨地定义运算次序旳规则, 每一种规则都是有效旳, 是明确旳, 此次序将在有限旳次数下终止。
特性包括:(1)可行性;(2)确定性, 算法中每一环节都必须有明确定义, 不容许有模棱两可旳解释, 不容许有多义性;(3)有穷性, 算法必须能在有限旳时间内做完, 即能在执行有限个环节后终止, 包括合理旳执行时间旳含义;(4)拥有足够旳情报。
算法旳基本要素: 一是对数据对象旳运算和操作;二是算法旳控制构造。
基本运算和操作包括: 算术运算、逻辑运算、关系运算、数据传播。
算法旳控制构造: 次序构造、选择构造、循环构造。
算法基本设计措施: 列举法、归纳法、递推、递归、减半递推技术、回溯法。
算法复杂度: 算法时间复杂度和算法空间复杂度。
算法时间复杂度是指执行算法所需要旳计算工作量。
一般来说, 算法旳工作量用其执行旳基本运算次数来度量, 而算法执行旳基本运算次数是问题规模旳函数。
在同一种问题规模下, 用平均性态和最坏状况复杂性来分析。
一般状况下, 用最坏状况复杂性来分析算法旳时间复杂度。
算法空间复杂度是指执行这个算法所需要旳内存空间。
1.2数据构造旳基本概念数据构造研究旳三个方面:(1)数据集合中各数据元素之间所固有旳逻辑关系, 即数据旳逻辑构造;(2)在对数据进行处理时, 各数据元素在计算机中旳存储关系, 即数据旳存储构造;(3)对多种数据构造进行旳运算。
数据构造是指互相有关联旳数据元素旳集合。
数据构造是反应数据元素之间关系旳数据元素集合旳表达。
数据旳逻辑构造包括:(1)表达数据元素旳信息;(2)表达各数据元素之间旳前后件关系。
(逻辑关系, 与在计算机内旳存储位置无关)一种数据构造中旳各数据元素在计算机存储空间中旳位置关系与逻辑关系有也许不一样。
数据旳存储构造是数据旳逻辑构造在计算机存储空间中旳寄存形式。
全国计算机等级考试二级公共根底知识总结第一章数据构造及算法1.1 算法算法:是指解题方案的准确而完整的描述。
算法不等于程序,也不等于计算方法,程序的编制不可能优于算法的设计。
算法的根本特征:是一组严谨地定义运算顺序的规那么,每一个规那么都是有效的,是明确的,此顺序将在有限的次数下终止。
特征包括:〔1〕可行性;〔2〕确定性,算法中每一步骤都必须有明确定义,不充许有模棱两可的解释,不允许有多义性;〔3〕有穷性,算法必须能在有限的时间内做完,即能在执行有限个步骤后终止,包括合理的执行时间的含义;〔4〕拥有足够的情报。
算法的根本要素:一是对数据对象的运算和操作;二是算法的控制构造。
指令系统:一个计算机系统能执行的所有指令的集合。
根本运算包括:算术运算、逻辑运算、关系运算、数据传输。
算法的控制构造:顺序构造、选择构造、循环构造。
算法根本设计方法:列举法、归纳法、递推、递归、减半递推技术、回溯法。
算法复杂度:算法时间复杂度和算法空间复杂度。
算法时间复杂度是指执行算法所需要的计算工作量。
算法空间复杂度是指执行算法所需要的内存空间。
1.2 数据构造的根本概念数据构造研究的三个方面:〔1〕数据集合中各数据元素之间所固有的逻辑关系,即数据的逻辑构造;〔2〕在对数据进展处理时,各数据元素在计算机中的存储关系,即数据的存储构造;〔3〕对各种数据构造进展的运算。
数据构造是指相互有关联的数据元素的集合。
数据的逻辑构造包含:〔1〕表示数据元素的信息;〔2〕表示各数据元素之间的前后件关系。
数据的存储构造有顺序、链接、索引等。
线性构造条件:〔1〕有且只有一个根结点;〔2〕每一个结点最多有一个前件,也最多有一个后件。
非线性构造:不满足线性构造条件的数据构造。
1.3 线性表及其顺序存储构造线性表是由一组数据元素构成,数据元素的位置只取决于自己的序号,元素之间的相对位置是线性的。
在复杂线性表中,由假设干项数据元素组成的数据元素称为记录,而由多个记录构成的线性表又称为文件。
第一章数据结构及算法经过对部分考生的调查以及对近年真题的总结分析,笔试部分常常考查的是算法困难度, 数据结构的概念, 栈, 二叉树的遍历, 二分法查找,读者应对此部分进行重点学习。
具体重点学习知识点:1.算法的概念, 算法时间困难度及空间困难度的概念2.数据结构的定义, 数据逻辑结构及物理结构的定义3.栈的定义及其运算, 线性链表的存储方式4.树及二叉树的概念, 二叉树的基本性质, 完全二叉树的概念, 二叉树的遍历5.二分查找法6.冒泡排序法1.1算法考点1 算法的基本概念考试链接:考点1在笔试考试中考核的几率为30%,主要是以填空题的形式出现,分值为2分,此考点为识记内容,读者还应当了解算法中对数据的基本运算。
计算机解题的过程事实上是在实施某种算法,这种算法称为计算机算法。
1.算法的基本特征:可行性, 确定性, 有穷性, 拥有足够的情报。
2.算法的基本要素:(1)算法中对数据的运算和操作一个算法由两种基本要素组成:一是对数据对象的运算和操作;二是算法的限制结构。
在一般的计算机系统中,基本的运算和操作有以下4类:算术运算, 逻辑运算, 关系运算和数据传输。
(2)算法的限制结构:算法中各操作之间的执行依次称为算法的限制结构。
描述算法的工具通常有传统流程图, N-S结构化流程图, 算法描述语言等。
一个算法一般都可以用依次, 选择, 循环3种基本限制结构组合而成。
考点2 算法困难度考试链接:考点2在笔试考试中,是一个常常考查的内容,在笔试考试中出现的几率为70%,主要是以选择的形式出现,分值为2分,此考点为重点识记内容,读者还应当识记算法时间困难度及空间困难度的概念。
1.算法的时间困难度算法的时间困难度是指执行算法所须要的计算工作量。
同一个算法用不同的语言实现,或者用不同的编译程序进行编译,或者在不同的计算机上运行,效率均不同。
这表明运用肯定的时间单位衡量算法的效率是不合适的。
撇开这些及计算机硬件, 软件有关的因素,可以认为一个特定算法"运行工作量"的大小,只依靠于问题的规模(通常用整数n表示),它是问题规模的函数。
全国计算机等级考试二级公共基础知识总结第一章数据结构与算法1.1 算法1.算法的基本特征:可行性;确定性,有穷性;拥有足够的情报。
,2.确定性:算法中每一步骤都必须有明确定义,不充许有模棱两可的解释,不允许有多义性;3.算法基本设计方法:列举法、归纳法、递推、递归、减斗递推技术、回溯法。
4.归纳法:通过观察一些简单而特殊的情况,最后总结出一般性的结论的算法的设计方法。
5.算法时间复杂度是指执行算法所需要的计算工作量。
可以用算法在执行过程中所需基本运算的执行次数来度量算法的工作量。
6.算法时间复杂度取决于问题的规模和待处理的数据的初态。
7.如果算法P调用另一个算法Q,而算法Q又调用算法P,则称为间接递归调用8.工程上常用的分治法是减半递推技术9.算法空间复杂度是指执行这个算法所需要的内存空间。
10.如果查找的x一定在数组中,此时q=1,则A(n)=(n+1)/2。
也就是说,在这种情况下,用顺序搜索法在长度为n的一维数组中查找值为x的元素,在平均的情况下需要检查数组中一半的元素。
如果已知需要查找的x有一半机会在数组中,此时q=1/2。
则A(n)=[(n+1)/4]+n/2=3n/4。
x不在数组中时,A(n)=n。
. 11.下面程序段的时间复杂度是for(int i=0;i<n;i++)for(int j=1;j<=m;j++)A[i][j]=0;语句的频度指的是该语句重复执行的次数,一个算法中所有语句的频度之和构成了该算法的运行时间。
本例中语句:A[i][j]=0;的频度是n*m,所以该程序段的时间复杂度是:O(m*n).12.算法的基本要素:一是对数据对象的运算和操作;二是算法的控制结构。
13.一个递归的定义可以用递归过程求解,也可以用非递归过程求解,但单从运行时间来看,通常递归过程比非递归过程较慢。
14.算法复杂度:算法时间复杂度和算法空间复杂度。
1.2 数据结构的基本概念1.数据结构研究的三个方面:数据的逻辑结构;数据的存储结构(物理结构);数据运算。
第一章数据结构与算法经过对部分考生的调查以及对近年真题的总结分析,笔试部分经常考查的是算法复杂度、数据结构的概念、栈、二叉树的遍历、二分法查找,读者应对此部分进行重点学习。
详细重点学习知识点:1.算法的概念、算法时间复杂度及空间复杂度的概念2.数据结构的定义、数据逻辑结构及物理结构的定义3.栈的定义及其运算、线性链表的存储方式4.树与二叉树的概念、二叉树的基本性质、完全二叉树的概念、二叉树的遍历5.二分查找法6.冒泡排序法1.1算法考点1 算法的基本概念考试链接:考点1在笔试考试中考核的几率为30%,主要是以填空题的形式出现,分值为2分,此考点为识记内容,读者还应该了解算法中对数据的基本运算。
计算机解题的过程实际上是在实施某种算法,这种算法称为计算机算法。
1.算法的基本特征:可行性、确定性、有穷性、拥有足够的情报。
2.算法的基本要素:(1)算法中对数据的运算和操作一个算法由两种基本要素组成:一是对数据对象的运算和操作;二是算法的控制结构。
在一般的计算机系统中,基本的运算和操作有以下4类:算术运算、逻辑运算、关系运算和数据传输。
(2)算法的控制结构:算法中各操作之间的执行顺序称为算法的控制结构。
描述算法的工具通常有传统流程图、N-S结构化流程图、算法描述语言等。
一个算法一般都可以用顺序、选择、循环3种基本控制结构组合而成。
考点2 算法复杂度考试链接:考点2在笔试考试中,是一个经常考查的内容,在笔试考试中出现的几率为70%,主要是以选择的形式出现,分值为2分,此考点为重点识记内容,读者还应该识记算法时间复杂度及空间复杂度的概念。
1.算法的时间复杂度算法的时间复杂度是指执行算法所需要的计算工作量。
同一个算法用不同的语言实现,或者用不同的编译程序进行编译,或者在不同的计算机上运行,效率均不同。
这表明使用绝对的时间单位衡量算法的效率是不合适的。
撇开这些与计算机硬件、软件有关的因素,可以认为一个特定算法"运行工作量"的大小,只依赖于问题的规模(通常用整数n表示),它是问题规模的函数。
计算机二级公共基础知识总结1.计算机基本概念计算机是一种用于处理和存储信息的工具,由硬件和软件组成。
硬件包括中央处理器(CPU)、内存、硬盘、显卡等,而软件包括操作系统、应用程序等。
常见的计算机有个人电脑、服务器、手机等。
2.计算机的组成与工作原理计算机由硬件和软件组成。
硬件包括中央处理器(CPU)、内存、硬盘、显卡等,而软件包括操作系统、应用程序等。
计算机的工作原理是通过执行指令实现对数据的处理和存储。
计算机执行指令的基本步骤是获取指令、解码指令、执行指令、存储结果。
3.计算机数学基础计算机数学基础是计算机科学与技术中的基础学科,包括离散数学、线性代数、概率论和统计等。
离散数学是一种研究离散结构的数学学科,常用于描述计算机科学中的数据结构和算法。
线性代数是一种研究向量空间和线性映射的数学学科,常用于计算机图形学和数据分析中。
概率论和统计是一种研究随机事件和随机变量的数学学科,常用于计算机网络和机器学习中。
4.数据表示与计算机编码计算机中的数据是以二进制形式表示的,每个二进制位称为一个比特(Bit)。
计算机中的数据类型包括整数、浮点数、字符等。
常见的数据表示方法有原码、反码和补码表示法。
计算机中的编码方式有ASCII码、Unicode、UTF-8等。
5.计算机网络与通信计算机网络是一种将多台计算机连接起来,实现数据传输与共享的技术。
计算机网络有局域网、广域网和互联网等不同的类型。
计算机网络中的常见协议有TCP/IP协议、HTTP协议、FTP协议等。
6.操作系统操作系统是一种管理计算机硬件和软件资源的软件,它提供了管理、调度和控制计算机的基本功能。
常见的操作系统有Windows、Linux、Unix等。
7.数据库与数据库管理系统数据库是一种用于存储和管理数据的软件,它提供了数据的增删改查等功能。
数据库管理系统是一种用于管理数据库的软件,它提供了数据的组织、存储和维护等功能。
常见的数据库有关系型数据库和非关系型数据库。
秋风清,秋月明,落叶聚还散,寒鸦栖复惊。
1、算法是指解决方案的准确而完整的描述2、算法的四个基本特性:可行性确定性有穷性拥有足够的情报3、算法有两个基本的要素组成:一、数据对象的运算和操作二、算法的控制结构4、计算机中的基本操作算术运算逻辑运算关系运算数据运算5、算法的控制结构给出了算法的基本框架,不仅决定了算法中各操作的执行顺序,而且也直接反应了算法的设计是否符合结构化的原则。
一个算法都可以用顺序、选择、循环3钟基本控制结构组成6、算法的复杂度主要包括时间复杂度和空间复杂度7、算法的时间复杂度是执行算法所需要的计算工作量。
他不仅应该与使用的计算机、程序设计语言及程序编制者无关,而且应该与算法实现过程中的许多细节无关。
8、算法的空间复杂度是指执行这个算法所需要的内存空间。
9、如果一个数据结构中没有一个数据元素,则称该数据结构为空的数据结构。
10、根据数据结构中个数据元素之间前后件关系的复杂程度,一般将数据结构分为线性结构和非线性结构11、如果一个非空的数据结构满足1、有且只有一个根结点;2、每一个结点最多有一个前件,也最多有一个后件,则称该数据结构为线性结构。
线性结构又称线性表。
12、在一个线性结构中插入或删除任何一个结点后还是线性结构。
13、在计算机中存放线性表,一种最简单的方法是顺序存储。
、14、线性表的顺序存储结构具有两个基本的特点:一、线性表中所有元素所占的存储空间是连续的。
二、线性表中各数据在存储空间中是按逻辑顺序依次存放的。
15、线性表的插入运算和删除运算P.8-916、栈是一种特殊的线性表,其插入和删除只能在表的一端进行。
17、在栈中允许插入与删除的一端称为栈顶,而不允许插入与删除的一端称为栈底,栈的修改原则是先进后出或后进先出。
18、入栈运算:1、首先将栈顶指针进1,然后将新元素入到栈顶指针指向的位置。
19、退栈预算:首先将栈顶元素赋予一个指定的变量,然后将栈顶指针退1。
20、队列:是指允许在一端进行插入、而在另一端进行删除的线性表,允许插入的一端称为队尾,允许删除的一端称为排头。
队列又称先进先出或后进后出的线性表,体现了“先来先服务的原则”21、队列的顺序存储结构一般采用循环队列的形式。
即将队列的存储空间的最后一个位置绕到第一个位置,形成逻辑上的环状空间,供列队循环使用。
22、线性表的顺序存储结构具有简单、运算方便等优点。
但是对于大的线性表,特别是元素变动频繁的大线性表不宜采用顺序的存储结构,二是采用链式存储结构23、链式存储结构中,要求每个结点有两部分组成:一用于存放数据元素值,称为数据域。
另一部分用于存放指针,称为指针域。
其中指针用于指向该结点的前一个或后一个结点。
24、在链式存储结构中的存储空间可以不连续,各数据结点的存储结构与数据之间的逻辑关系可以不一致,而数据元素之间的逻辑关系是由指针域来确定的。
链式存储方式既可以用于表示线性结构,也可以表示非线性结构25、线性链表:线性表的链式存储结构称为线性链表。
26、树:树是一种简单的非线性结构。
在树结构中,每一个结点只有一个前件,称为父结点,没有前结点的只有1个,称为根结点,简称为树的根。
每一个结点可以有多个后件,他们都称为子结点。
27、二叉树是一种重要的非线性结构。
二叉树具有两个特点:非空二叉树只有一个根结点。
每个结点最多有两颗子树,且分别称为该结点的左子树与右子树。
28、在二叉树的第K层上,最多有2k-1(k>=1)个结点29、深度为M 的二叉树最多有2M-1个结点。
深度为M 的二叉树是指二叉树共有M层。
30、在任意一颗二叉树中,度为0的结点(即叶子结点)总比度为2的结点多一个。
31、具有N个结点的二叉树,其深度至少为[log2n]+1,32、满二叉树,除了最后一层外,每一层上的所有结点都有两个子结点的二叉树为满二叉树。
即深度为K 的满二叉树,其第K层上有2k-1个结点,且深度为M 的满二叉树共有2M-1个结点。
33、在计算机中,二叉树通常采用链式存储结构。
与线性链表类似,用于存储二叉树中各元素的存储结点也有两部分组成:数据域和指针域。
34、二叉树的遍历可以分为三种:前序遍历中序遍历后序遍历35、前序遍历:首先访问根结点,然后遍历左子树,最后遍历右子树。
36、中序遍历:首先遍历左子树,然后访问根结点,最后遍历右子树。
37、后序遍历:首先遍历左子树,然后遍历右子树,最后访问根结点。
38、顺序查找:又称顺序搜索,一般指在线性表中查找指定元素。
对于大的线性表来说,顺序查找效率很低。
但在以下两种情况只能用顺序查找:1、如果线性表是无序的(即表中的元素是无序的),则不管是顺序存储结构还是链式存储结构,都只能顺序查找。
2、即使是有序线性表,如果采用链式存储结构,也只能用顺序查找。
39、二分法查找: 二分法查找只能用于顺序存储的有序表。
对于长度为N 的有序线性表,在最坏的情况下,二分查找只需要比较log2n次,而顺序查找则需要比较N 次。
40、交换类排序法:是指借助数据元素之间的相互交换进行排序的一种方法。
包括冒泡排序法和快速排序法。
41、冒泡排序法:一种最简单的交换类排序方法,它是通过相邻数据元素的交换逐步将线性表变成有序。
假设线性表的长度为N,则在最坏的情况下,冒泡排序需要经过N/2遍从前往后的扫描和N/2遍从后往前的扫描,需要的比较次数为n(n-1)/2.但一般情况下要小于这个工作量。
42、快速排序法:是一种交换类的排序方法,但由于它比冒泡排序法的速度快,因此称为快速排序法。
43、插入类排序法包括简单插入类排序法希尔排序法44、简单插入排序法的效率与冒泡排序法相同。
在最坏的情况下需要n(n-1)/2 次比较45、希尔排序的效率与所选取的增量序列有关。
在最坏的情况下,希尔排序所需要的比较次数为O(n1.5)46、选择类排序法包括简单选择排序法和堆排序法47、简单排序法在最坏的情况下需要比较N(n-1)/2次48、堆排序法在最坏情况下需要比较O(nlog2n)49、就程序设计方法和技术的发展而言,主要经过了结构化程序设计和面向对象的程序设计两个阶段。
50、面向对象设计的主要优点是:与人类习惯的思维方法一致;稳定性好;可重用性好;易于开发大型软件产品;可维护性好。
51、清晰第一,效率第二的论点已经成为当今主导的程序设计风格。
52、结构化程序实际方法的主要原则为自顶向下,逐步求精,模块化,限制使用GOTO语句53、结构化程序语言仅使用顺序、选择、重复3钟基本控制结构就足以表达出各种其他形式的程序设计方法。
54、顺序就够是一种简单的程序设计结构,它是最基本、最常用的结构。
55、选择结构又称为分支结构,它包括简单选择结构和分支选择结构。
56、重复结构又称为循环结构。
在程序设计语言中,重复结构对应两类循环语句,对先判断后执行循环体的称为当型循环结构。
对先执行循环体后判断的称为直到型循环结构。
即直到型循环至少执行一次运算。
57、遵循结构化程序的设计原则,按结构化程序设计方法设计出的程序具有明显的特点。
一、程序结构良好、易读、易理解、易维护。
二、可以提高编程工作的效率,降低软件开发成本。
58、对象是面向对象方法中最基本得概念。
对象具有以下的一些基本特点:1、标识的唯一性。
2、分类性。
3、多态性。
、4、封装性。
5、模块独立性好。
59、类:将属性、操作相似的对象归为类。
即类是具有共同属性、共同方法的对象的集合。
60、消息:一个消息有三部分组成:1、接受消息的对象名称、2、消息标识符3、零个或多个参数。
61、在面向对象方法中,实现信息隐蔽是依靠对象的封装。
62、程序中添加的必要注释:程序的代码要层次分明,清晰明了,满足视觉要求。
注释一般分为序言性注释和功能性注释。
序言性注释通常位于程序的开头部分,他给出了程序的整体说明。
功能性注释一般嵌在源程序体之中,主要描述其后的语句或程序。
63、从程序行文角度,编写程序源代码应该注意源程序文档化、程序的语句结构、数据的说明和输入输出等方面的要求。
64、衡量模块的独立程度使用耦合性和内聚性两个度量标准。
模块的内聚程度越高越独立,耦合程序越低越独立。
65、继承性是面向对象的方法的一个主要特性。
继承是使用已有的类定义作为基础建立新类的定义技术。
已有的类可以当作基类来引用,新类相应的可当做派生类来引用。
这种层次结构系统的一个重要性质是继承性,一个类直接继承其父类的描述或特性,子类自动的共享基类中定义的数据和方法。
66、通常,将软件产品从提出、实行、使用维护到停止使用退役的过程称为软件的生命周期。
软件生存期一般包括可行性研究与需求分析、设计、实现、测试、交付使用以及维护等活动。
67、软件工程的概念出现源自软件危机。
而软件危机归结为成本、质量、生产率的问题。
68、软件工程是建立并使用完善的工程化原则。
软件工程主要包括3个要素:方法、工具、过程。
69、软件工程的核心思想是把软件产品看做是一个工程产品来处理。
70、软件工程的原则:抽象、信息隐蔽、模块化、局部化、确定性、一致性、完备性和可验证性。
71、结构化分析方法是结构化程序设计理论在软件需求分析阶段的运用。
72、结构化分析方法的实质:着眼于数据流、自顶向下、逐层分解、建立系统的流程。
以数据流图和数据字典为主要工具,建立系统的逻辑模型。
73、数据流图从数据传递和加工的角度来刻画数据流从输入到输出的移动变换过程。
74、数据字典是结构化分析方法的核心。
数据字典是对所有与系统相关的数据元素的一个有组织的列表,具有精确、严格的定义,使得用户和系统分析员对于输入、存储成分和中间的计算结构有共同的理解。
75、表4-6 Array数据字典中采用的符号76、判定树和判定表77、软件需求规格说明书是需求分析阶段的最后成果,是软件开发的重要文档之一。
78、软件需求规格说明书的作用。
1、便于用户、开发人员进行理解和交流。
2、反映出用户问题的结构。
可以作为软件开发工具的基础和依据。
3、作为确认测试和验收的依据。
79、有关软件设计的基本内容。
从技术观点看,软件设计包括软件结构设计、数据设计、接口设计、过程设计。
其中,结构设计用于定义软件系统各主要部件之间的关系;数据设计用于将分析时创建的模型转化为数据结构的定义。
接口实际用于描述软件内部、软件和协作系统之间以及软件与人之间如何通信;过程设计则是把系统结构部件转化成软件的过程性描述。
80、从工程管理角度来看,软件设计分为两步完成:概要设计和详细设计。
81、软件设计的基本原理:抽象、模块化、信息隐蔽、模块独立性。
82、。