计算机公共基础考点.docx

上传人:b****5 文档编号:7962107 上传时间:2023-01-27 格式:DOCX 页数:9 大小:19.92KB
下载 相关 举报
计算机公共基础考点.docx_第1页
第1页 / 共9页
计算机公共基础考点.docx_第2页
第2页 / 共9页
计算机公共基础考点.docx_第3页
第3页 / 共9页
计算机公共基础考点.docx_第4页
第4页 / 共9页
计算机公共基础考点.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

计算机公共基础考点.docx

《计算机公共基础考点.docx》由会员分享,可在线阅读,更多相关《计算机公共基础考点.docx(9页珍藏版)》请在冰豆网上搜索。

计算机公共基础考点.docx

计算机公共基础考点

第一章算法和数据结构

一、算法的概念

算法的定义

算法是指解决方案的准确而完整的描述,是一系列解决问题的清晰指令。

算法 ≠ 程序。

算法的5大特征

1. 至少1个输出:

任何算法,必须有输出结果。

2. 至少0个输入,足够的情报:

对于复杂算法,情报越充足,效果越好。

3. 有穷性:

算法能在有限的执行步骤内、有限的时间内执行结束。

4. 可行性:

算法的每一个步骤都必须能够翻译成计算机可执行的基本操作。

5. 确定性:

算法的每一个步骤都必须描述准确,没有歧义。

算法的复杂度

【时间复杂度】

以基本操作次数的数量级计数,不以秒计数。

常见复杂度(越小越快):

O

(1)

【空间复杂度】

算法执行过程中的空间开销。

【二者关系】

虽然算法中常常会以牺牲空间的方式来换取时间效率,但一般认为二者没有必然关系。

二、数据结构的概念

数据结构的定义

数据结构是指计算机组织、存储数据的方式。

数据结构可分为逻辑结构和存储结构。

其中:

1. 逻辑结构又分为线性结构和非线性结构。

2. 存储结构又分为顺序存储结构和链式存储结构

逻辑结构

逻辑结构不关心数据如何存储,只关心数据的组织方式。

逻辑结构可分为线性结构和非线性结构。

典型线性结构:

栈、队列

典型非线性结构:

树(二叉树)、网状图

存储结构

存储结构不关心数据如何组织,只关心数据的存储方式。

存储结构又分为顺序存储结构和链式存储结构。

【顺序存储结构】

1. 所有元素在内存中按顺序排列

2. 查找、修改比较不方便

3. 插入、删除比较方便

【链式存储结构】

1. 所有元素在内存中随机分布

2. 插入、删除比较不方便

3. 查找、修改比较方便

4. 由于要存储下一元素的地址,所以需要更多的存储空间

【二者关系】

二者没有必然关系。

三、栈

基本概念

1. 栈属于逻辑结构的概念,属于线性结构。

2. 栈既可以用顺序存储结构实现,也可以用链式存储结构实现。

3. 栈的特点是先进后出(FILO)。

4. 进出过程中,栈底指针不变,栈顶指针移动。

计算规则

视栈顶和栈底指针的指向规则而定。

一般的,栈底指向首元素的前一位置(比如0),栈顶指针指向尾元素(比如5),即栈中1、2、3、4、5各存储了一个数据。

此时:

栈中元素个数=栈顶指针-栈底指针(比如5-0=5)

四、队列

基本概念

1. 队列属于逻辑结构的概念,属于线性结构。

2. 队列既可以用顺序存储结构实现,也可以用链式存储结构实现。

3. 队列的特点是先进先出(FIFO)。

4. 队头负责出队,队尾负责入队。

循环队列

循环队列是专门针对顺序存储结构空间固定的特点而设计的,所以一般认为循环队列是顺序存储结构。

其核心原理是:

当队尾到达队列最大位置、而队头不在最小位置时如果继续入队,则队尾移至队列最小位置,从头开始移动,形成循环。

出队时同理。

计算规则

视栈顶和栈底指针的指向规则而定。

一般的,队头指向首元素的前一位置,队尾指针指向尾元素。

假设队列容量为20:

1. 若队尾>队头(比如队尾为7,队头为2):

队列元素个数=队尾指针-队头指针(7-2=5)

2. 若队头>队尾(比如队尾为2,队头为7):

队列元素个数=队尾指针-队头指针+队列容量(2-7+20=15)

其中,第二种情况只有循环队列中才会出现。

五、二叉树的计算

基本概念

1. 一个二叉树只有一个根节点。

2. 在二叉树中,任何一个节点最多只能有2个子节点。

3. 一个节点有几个子节点,则度为几。

度为0的节点称为叶子节点。

常用公式

1. 第n层的节点数最多为2^(n-1)个。

2. 层数为n的二叉树,总节点数最多为2^n-1个。

3. 叶子节点数 = 度为2的节点数+1

4. 二叉树节点总数 = 度为2的节点数 + 度为1的节点数 + 叶子节点数

六、二叉树的遍历

遍历规则

先序遍历:

父节点、左子树、右子树

中序遍历:

左子树、父节点、右子树

后序遍历:

左子树、右子树、父节点

其中左右子树按此规则继续拆分,拆分过程中也按其对应规则遍历,直到不能再拆分为止。

七、查找算法

顺序查找

其算法复杂度为O(n),长度为n的线性表,最多需要n次才能找到指定元素。

顺序查找最大/最小值

长度为n的线性表,所有元素随机排列,最多需要n-1次才能找到最大/最小值。

二分查找

其算法复杂度为O(logn),长度为n的线性表,最多需要logn次就能找到指定元素。

二分查找使用条件

1. 使用顺序存储结构(如数组)。

2. 所有元素按序排列。

八、排序算法

按原理分类

交换类:

冒泡排序、快速排序

选择类:

简单选择排序、堆排序

插入类:

简单插入排序、希尔排序

按稳定性分类

稳定:

冒泡排序、简单插入排序……

不稳定(快选希堆):

快速排序、简单选择排序、希尔排序、堆排序

按算法复杂度

O(n^2):

冒泡排序、简单选择排序、简单插入排序

O(nlogn):

快速排序、堆排序、希尔排序

在一般情况下,快速排序是已知常用算法中效率最高的。

在最坏情况下,快速排序的算法复杂度是O(n^)2。

第二章软件工程

一、需求分析

基本概念

可行性研究主要考虑:

经济、技术、法律。

需求分析阶段最重要的文档:

《软件需求规格说明书》。

《软件需求规格说明书》的任务是统一认识,所以必须追求准确,消灭歧义。

数据流图(DFD)

箭头:

数据流

圆形、椭圆形:

数据的加工

方框:

系统和环境的接口

半开口的方框、双杠:

数据的存储文件

数据字典

1. 是数据流图的重要补充

2. 应该包含数据流图中提到的所有数据

二、软件设计

概要设计

耦合性:

模块之间的关联程度

内聚性:

模块内部的关联程度

设计原则:

高内聚低耦合

软件系统结构图:

深度、宽度、扇入、扇出。

详细设计

【程序流程图】

箭头:

控制流

矩形:

执行步骤

菱形:

逻辑条件

【N-S图】

【PAD图】

三、结构化程序设计

基本原则

自顶向下、逐步求精、模块化

使用3种基本控制结构,限制goto语句的使用

3种控制结构

顺序结构、选择结构、循环结构

四、面向对象程序设计

基本概念

对象是类的实例。

类由两个部分组成:

属性、方法。

由同一个类定义的对象,拥有相同的属性和方法

类的特征

封装型、继承性、多态性

五、测试与调试

基本概念

测试:

发现错误

调试:

诊断并改正错误

注意:

没有一种方法可以保证软件没有错误

黑盒和白盒

【黑盒】

根据软件的外部功能设计测试用例

例如:

等价类划分、边界值分析、错误推测法

【白盒】

根据软件的内部逻辑设计测试用例

例如:

基本路径覆盖测试、逻辑条件覆盖测试

测试流程

单元测试:

对单一模块进行测试

集成测试:

对模块间的协作进行测试

确认测试:

对《软件需求规格说明书》的需求进行逐一确认

系统测试:

对安全、性能等系统指标进行测试

回归测试:

对调试后的代码重新进行测试

第三章数据库系统

一、数据库系统的概念

基本概念

数据(Data):

信息的载体。

包括类型和值两个属性。

数据库(DB):

依照某种数据模型将数据组织并存放起来的集合。

数据库管理系统(DBMS):

系统软件,是数据库系统的核心,为数据库提供底层服务。

数据库管理系统(DBAS):

基于数据库管理系统设计的应用软件,面向普通用户使用。

数据库管理员(DBA):

负责数据库设计、维护、性能、安全等工作的高科技人才。

数据库系统(DBS):

包括以上所有概念,再加上其他相关软硬件环境的总和。

数据语言

数据定义语言:

表的建立、修改和删除

数据操纵语言:

表中数据的增加、删除、修改和查询

数据控制语言:

负责表中的安全性和完整性的设置

发展阶段

人工管理阶段 -> 文件管理阶段 -> 数据库管理阶段

数据库管理阶段主要解决的问题:

数据共享。

独立性

逻辑独立性:

逻辑结构修改时,应用程序不需要修改。

物理独立性:

物理结构修改时,应用程序不需要修改。

三级模式

概念模式(逻辑模式):

数据库逻辑结构的全局描述

外模式(子模式):

用户能看到的数据库逻辑结构和描述

内模式(物理模式):

数据库的物理存储结构和存取方法

二、E-R模型

基本概念

E(Entity):

实体

R(RelationShip):

联系

一对一:

学生和学号、中国公民和身份证、考生和准考证号……

一对多:

班长和班级、宿舍和学生……

多对多:

学生和课程、老师和课程……

图示

实体:

矩形

联系:

菱形

属性:

椭圆形

三、关系模型

基本概念

层次模型:

用“树”的方式组织数据

网状模型:

用“图”的方式组织数据

关系模型:

用“二维表”的方式组织数据

【关系模型】 属性、元组

【关系数据库】字段、记录

元组的分量是关系模型中的最小不可再分单位

数据完整性

候选键(候选关键字):

可以标识记录唯一性的几个字段。

主键(主关键字):

可以标识记录唯一性的一个字段。

一个表只能有一个主关键字。

外键(外部关键字):

如果当前表中某字段是其他表的主键,则称此字段为外键。

实体完整性:

主键和候选键不能为空。

参照完整性:

对一对多关系中父表和子表之间关系的制约。

自定义完整性:

其他设置。

如域完整性,就是对字段取值范围进行设置。

四、关系代数

基本概念

【交】

计算前提:

两个关系的属性完全相同

属性规则:

属性保持不变。

元组规则:

对两个关系中的元组求交集。

【并】

计算前提:

两个关系的属性完全相同

属性规则:

属性保持不变。

元组规则:

对两个关系中的元组求并集。

【差】R-S=T

计算前提:

两个关系的属性完全相同

属性规则:

属性保持不变。

元组规则:

表示取R中存在且S中不存在的元组形成结果T。

【笛卡儿积】RxS=T

计算前提:

对属性无要求

属性规则:

对两个关系的属性求并集。

元组规则:

对两个关系的元组做全排列。

【除】R/S=T

计算前提:

S的属性应是R的子集

属性规则:

取R中存在的属性而S中不存在的属性作为结果T的属性,即对属性做差运算。

元组规则:

在R中选择与各属性值完全相等的元组,将其对T中的属性做投影

基本概念

【选择】

规则:

按照指定规则,对元组进行筛选,属性不变。

【投影】

规则:

按照指定规则,对属性进行筛选,元组不变。

【连接】

前提:

两个关系中有一个公共属性

规则:

先做笛卡儿积,然后根据连接条件对结果做选择。

连接条件根据公共属性设计。

【自然连接】RxS=T

前提:

两个关系中有一个公共属性

规则:

1.做笛卡儿积,2.将公共属性值相等的记录留下,3.将两个公共属性合并为一个

五、数据库的设计

生命周期

【需求分析】

数据流图、数据字典、需求规格说明书

【概念设计】

设计E-R模型

【逻辑设计】

将E-R模型转换为数据模型(主要是关系模型)

【物理设计】

将关系模型转换为关系数据库

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1