计算机二级公共基础知识.docx

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

计算机二级公共基础知识.docx

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

计算机二级公共基础知识.docx

计算机二级公共基础知识

第1章数据结构与算法

1.1算法

1.1.1算法的基本概念

1.算法的基本特征

(1)可行性

(2)确定性

(3)有穷性

(4)拥有足够的情报

2.算法的基本要素

一个算法都一般都可以用顺序、选择、循环三种基本控制结构组合而成。

3.算法设计的基本方法

(1)列举法

(2)归纳法

(3)递推

(4)递归

(5)减半递推技术

1.1.2算法复杂度

1.算法的时间复杂度

2.算法的空间复杂度

1.2数据结构的基本概念

1.2.1什么是数据结构

1.2.2数据结构的图形表示

1.2.3线性结构与非线性结构

1.3线性表及其顺序存储结构

1.3.1线性表的基本概念

1.3.2线性表的顺序存储结构

1.3.3线性表的插入运算

1.3.4顺序表的删除运算

1.4栈和队列

1.4.1什么是栈

1.什么是栈

栈是“先进后出”或“后进先出”

2.栈的顺序存储及其运算

(1)入栈运算

(2)退栈运算

(3)读栈顶元素

1.4.1什么是队列

1.什么是队列

2.循环队列及其运算

(1)入队运算

(2)退队运算

1.5线性链表

1.5.1线性链表的基本概念

1.5.2线性链表的基本运算

1.5.3循环链表及其基本运算

1.6树与二叉树

1.6.1树的基本概念

1.树是一种简单的非线性结构。

树之间的元素具有明显的层次性。

2.在树的结构中,每一个结点只有一个前件,称为父结点,没有前件的结点只有一个,称为树的根结点,简称为树的根。

3.在树结构中,每一个结点可以有多个后件,他们都成为该结点的子结点。

没有后件的结点称为叶子结点。

4.在树结构中,一个结点所拥有后件个数称为该结点的度。

在树中最大的度称为树的度。

5.根结点在第1层。

6.树的最大层次称为树的深度。

7.在树中,以某结点的一个子结点为根构成的树称为该结点的一棵子树。

8.在树中叶子结点没有子树。

1.6.2二叉树及其基本性质

1.什么是二叉树

二叉树是一种非线性结构。

二叉树特点

1非空二叉树只有一个根结点;

2每一个结点最多有两棵子树;

2.二叉树的基本性质

性质1在二叉树的第K层上,最多有

(k≥1)个结点。

性质2深度为m的二叉树最多有

个结点。

性质3在任意的一棵二叉树中,度为0的结点(叶子结点)总比度为2的结点多一个。

性质4具有m个结点的二叉树,其深度最少为

完全二叉树具有以下性质:

性质5具有n个结点的完全二叉树的深度为

性质6设完全二叉树共有n个结点

1若k=1,则该结点为根结点,它没有父结点;若k>1,则该结点为父结点编号为INT(k/2)。

2若2k≤n,则编号为k的结点的左子结点编号为2k;否则该结点没有左子结点(也没有右子结点)。

3若2k+1≤n,则编号为k的结点的右子结点编号为2k+1;否则该结点没有右子结点。

1.6.3二叉树的存储结构

在计算机中一般采用链式存储结构。

1.6.4二叉树的遍历

1.前序遍历

2.中序遍历

3.后序遍历

1.7查找技术

1.7.1顺序查找

1.7.2二分法查找

1.8排序技术

1.8.1交换类排序法

1.冒泡排序法

2.快速排序法

1.8.2插入类排序法

1.简单插入排序法

2.希尔排序法

1.8.3选择类排序法

1.简单选择排序法

2.堆排序法

第2章程序设计基础

2.1程序设计方法与风格

1.源程序文档化

2.数据说明方法

3.语句的结构

4.输入和输出

2.2结构化程序设计

2.2.1结构化程序设计的原则

1.自顶向下

2.逐步求精

3.模块化

4.限制使用goto语句

2.2.2结构化程序设计的基本结构与特点

1.顺序结构

2.选择结构

3.重复结构(循环结构)

2.2.3结构化程序设计原则和方法的应用

2.3面向对象的程序设计

2.3.1关于面向对象方法

面向对象的优点:

1.与人类习惯的思维方法一致

2.稳定性好

3.可重用性

4.易于开发大型软件产品

5.可维护性好

(1)开发的软件稳定性比较好

(2)开发的软件比较容易修改

(3)开发的软件比较容易理解

(4)易于测试和调试

2.3.2面向对象方法的基本概念

1.对象

对象是面向对象方法中最基本的概念。

对象有以下基本特点:

1标识唯一性。

2分类性。

3多态性。

4封装性。

5模块独立性好。

2.类和实例

3.消息

通常,一个消息由三部分组成:

1接收消息的对象名称;

2消息的标识符(也称消息名);

3零个或多个参数。

4.继承

5.多态性

第3章软件工程基础

3.1软件工程基本概念

3.1.1软件定义与软件特点

2软件是一种逻辑实体,而不是物理实体,具有抽象性。

②软件的生产与硬件不同,它没有明显的制作过程。

3软件在运行、试用期间不存在磨损、老化问题。

4软件的开发、运行对计算机系统具有依赖性,受计算机系统的限制,这导致软件的移植问题。

5软件复杂性高,成本昂贵。

6软件开发涉及诸多的社会因素。

3.1.2软件危机与软件工程

①软件需求的增长得不到满足。

②软件开发的成本和进度无法控制。

3软件质量难以保证。

4软件不可维护或维护非常低。

5软件的成本不断提高。

6软件开发生产率的提高赶不上硬件的发展和应用需求的增长。

3.1.3软件工程过程与软件生命周期

1.软件工程过程

1P(plan)——软件规则说明。

规定软件的功能及其运行时的限制。

2D(Do)——软件开发。

生产满足规格说明的软件。

③C(Check)——软件确认。

确认软件能够满足客户提出的要求。

4A(Action)——软件演进。

为满足客户的变更要求,软件必须在使用过程中演变。

2.软件生命周期

1可行性研究与计划制定。

2需求分析。

3软件设计。

4软件实现。

5软件测试。

6运行和维护。

3.1.4软件工程的目标与原则

1.软件工程的目标

(1)软件开发技术

(2)软件工程管理

2.软件工程的原则

1抽象。

2信息隐蔽。

3模块化。

4局部化。

5确定性。

6一致性。

7完备性。

8可验证性。

3.1.5软件工程的目标与原则

1.软件开发工具

2.软件开发环境

3.2结构化分析方法

3.2.1需求分析与需求分析方法

1.需求分析

1需求分析的定义

2需求分析的阶段工作

(1)需求获取

(2)需求分析

(3)编写需求规格说明书

(4)需求评审

2.需求分析方法

①结构化分析方法

②面向对象的分析方法

3.2.2结构化分析方法

1.关于结构化分析方法

2.结构化分析的常用工具

(1)数据流图

第一步:

由外向里

第二步:

自顶向下

第三步:

逐层分解

(2)数据词典

(3)判定树

(4)判定表

3.2.3软件需求规格说明书

1.软件需求规格说明书的作用

2.软件需求规格说明书的内容

3.软件需求规格说明书的特点

1正确性

2无歧义性

3完整性

4可验证性

5一致性

6可理解性

7可修改性

8可追踪性

3.3结构化设计方法

3.3.1软件设计的基本概念

1.软件设计的基础

2.软件设计的基本原理

(1)抽象

(2)模块化

(3)信息隐蔽

(4)模块独立性

1内聚性

2耦合性

3.结构化设计方法

3.3.2概要设计

1.概要设计的任务

(1)设计软件系统结构

(2)数据结构及数据库设计

(3)编写概要设计文档

(4)概要设计文档评审

2.面向数据流的设计方法

(1)数据流类型

1变换型

2事务型

(2)面向数据设计方法的实施要点与设计过程

3.设计的准则

1提高模块独立性

2模块规模适中

3深度、宽度、扇出和扇入适当

4使模块的作用域在该模块的控制域内

5应减少模块的接口和界面的复杂度

6设计单入口、单出口的模块

7设计功能可预测的模块

3.3.3详细设计

常见设计工具有:

图形工具:

程序流程图,N—S,PAD,HIPO

表格工具:

判定表

语言工具:

PDL(伪代码)

1.程序流程图

2.N—S

3.PAD图(ProblemAnalysisDiagram)

PAD图特征:

1结构清晰,结构化程度高;

2易于阅读;

3最左端的纵线是程序的主干线,对应程序的第一层结构;每增加一层PAD图向右扩展一条纵线,故程序的纵线数等于程序层次数;

4程序执行:

从PAD图最左主干线上端点开始,自上而下、自左向右依次执行,程序终止于最左主干线。

4.PDL(ProcedureDesignLanguage)

3.4软件测试

3.4.1软件测试的目的

3.4.2软件测试的准则

1.所有测试都应追溯到需求

2.严格执行测试计划,排除测试的随意性

3.充分注意测试中的群集现象

4.程序员应避免检查自己的程序

5.穷举测试不可能

6.妥善保存测试计划、测试用例、出错统计和最终分析报告,为维护提供方便

3.4.3软件测试技术与方法综述

1.静态测试与动态测试

(1)静态测试

代码审查;

代码走查;

桌面检查;

静态分析。

(2)动态测试

2.白盒测试方法与测试用例设计

(1)逻辑覆盖测试

(2)基本路径测试

3.黑盒测试方法与测试用例设计

(1)等价类划分法

有效等价类和无效等价类

(2)边界值分析法

(3)错误推测法

3.4.4软件测试的实施

1.单元测试

2.集成测试

3.确认测试

4.系统测试

3.5程序的调试

3.5.1基本概念

1.程序调试的基本步骤

(1)错误定位

(2)修改设计和代码,以排除错误

(3)进行回归测试,防止引进新的错误

2.程序调试原则

(1)确定错误的性质和位置时的注意事项

(2)修改错误的原则

3.5.2软件调试方法

1.强行排错法

2.回溯法

3.原因排除法

第4章数据库设计基础

4.1数据库系统的基本概念

4.1.1数据、数据库、数据管理系统

1.数据

2.数据库

3.数据管理系统

4.数据库管理员

5.数据库系统

6.数据库应用系统(DatabaseApplicationSystem,DBAS)

4.1.2数据库的系统发展

1.文件系统阶段

2.层次数据库与网状数据库系统阶段

3.关系数据库系统阶段

4.1.3数据库系统的基本特点

1.数据的集成性

2.数据的高共享性与低冗余性

3.数据独立性

1物理独立性

2逻辑独立性

4.数据库统一管理与控制

4.1.4数据库系统的内部结构体系

1.数据库系统的三级模式

(1)概念模式

(2)外模式

(3)内模式

2.数据库系统的两极映射

(1)概念模式到内模式的映射

(2)外模式到概念模式的映射

4.2数据模型

4.2.1数据模型的基本概念

数据模型按不同的应用层次分为三种类型:

概念数据模型、逻辑数据模型、物理数据模型。

4.2.2E-R模型

1.E-R模型的基本概念

(1)实体

(2)属性

(3)联系

2.E-R模型三个基本概念之间的联系关系

3.E-R模型的图式法

4.2.3层次模型

4.2.4网状模型

4.2.5关系模型

1.关系的数据结构

2.关系操纵

(1)数据查询

(2)数据删除

(3)数据插入

(4)数据修改

3.关系中的数据约束

(1)实体完整性约束

(2)参照完整性约束

(3)用户定义的完整性约束

4.3关系代数

1.数据模型的基本操作

2.关系模型的基本运算

(1)插入

(2)删除

(3)修改

(4)查询

1.投影运算

2.选择运算

3.笛卡尔积运算

3.关系代数中的扩充运算

(1)交(intersection)运算

(2)除(division)运算

(3)连接(join)于自然连接(naturaljoin)运算

4.关系代数的应用实例

4.4数据库设计与管理

4.4.1数据库设计概述

4.4.2数据库设计的需求分析

1.信息要求

2.处理要求

3.安全性和完整性要求

4.4.3数据库概念设计

1.数据库概念设计概述

(1)集中式模式设计法

(2)视图集成设计法

2.数据库概念设计的过程

(1)选择局部应用

(2)视图设计

1.自顶向下

2.由底向上

3.由内向外

(3)视图集成

4.4.4数据库的逻辑设计

1.从E-R图向关系模式转换

2.逻辑模式规范化及调整、实现

3.关系视图设计

作用:

(1)提供数据逻辑独立性

(2)能适用用户对数据的不同需求

(3)有一定数据保密功能

4.4.5数据库的物理设计

4.4.6数据库管理

1.数据库的建立

2.数据库的调整

3.数据库的重组

4.数据库安全性控制与完整性控制

5.数据库的故障校复

6.数据库监控

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

当前位置:首页 > PPT模板 > 其它模板

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

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