计算机国二-----第一章-算法---笔试绝对有用

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第一章算法

一、基本概念

1、算法:是指解题方案的准确而完整的描述。

2、算法的基本特征:可行性、确定性、有穷性、拥有足够的情报。

3、衡量算法的标准:时间复杂度(用语句条数)和空间复杂度(开辟变量的个数)。

4、算法的控制结构:顺序结构、选择结构、循环结构。

5、算法设计基本方法:列举法、归纳法、递推法、递归法、二分法(减半递推法)、回溯法。

二、时间复杂度的计算

1、时间复杂度的概念:是指执行算法所需要的计算工作量。O(表达式)来表示算法的时间复杂度。

2、空间复杂度的概念:是指执行这个算法所需要的内存空间。一般用变量的个数来衡量。O(表达式)

第二章数据结构

一、基本概念

1、数据结构:反映数据元素之间关系的数据元素集合的表示。结构:数据元素之间的关系。数据元素用D表示,数据元素之间的关系用R 表示。S(D,R)

2、数据元素之间的关系:

·集合关系(数据元素之间无任何联系)

·线性关系(数据元素之间1对1)

·树型关系(数据元素之间是1对多的关系)

·图型关系(数据元素之间是多对多的关系)

三、线性表List

1、线性表的存储结构有顺序结构和链表结构。

2、顺序表所占的存储空间是连续的,存储数据元素时依次存放。

3、栈(FILO):是一种特殊的线性表,插入和删除操作只能在表的一端进行。可以进行插入和删除的一端称为栈项,不可以进行插入和删除的一端称为栈底。栈中数据元素的个数称为栈长。栈的插入操作称为入栈,删除操作称为出栈。“先进后出”的特性(First In Last Out)

4、队列(FIFO):是一种特殊的线性表,在表的一端进行插入在另一端进行删除。进行插入一端称为队尾,进行删除的一端称为队首。队列中数据元素的个数称为队列长度。具有“先进先出”的特性(First In First Out)

第三章树和二叉树

一、相关概念

1、根结点:树型结构中有且仅有唯一的一个结点,没有前驱,称它为根结点。

2、叶子结点:没有后继元素的结点称为叶子结点。

3、结点的度:每一个结点孩子的个数称为该结点的度。

4、树的度:树中最大的结点的度称树的度。

5、树的深度:树中结点所在的最大的层数称为树的深度。

6、二叉树:度为二的树,并且孩子结点有序。

7、满二叉树:二叉树中所有结点的度都为二,并且叶子结点在同一层。

8、完全二叉树:与同深度的满二叉树相比缺少结点编号大的结点。

二、二叉树的性质(重点)

1、在二叉树的第k层上,最多有2k-1(k)=1)个结点。

2、深度为m的二叉树最多有2m-1个结点。

3、在任意一棵二叉树中,度为0的结点的个数比度为2的结点的个数多一个。

4、具有n个结点的二叉树,其深度至少为INT(log2n)+1。

1、就程序设计方法和技术的发展而言,主要经过了结构化程序设计和面向对象的程序设计阶段。

2、注释一般分为序言性注释和功能性注释。

3、结构化程序设计的原则:自顶向下、逐步求精、模块化、限制goto 语句的使用。

4、结构化程序的基本结构:顺序结构、选择结构、重复结构(循环结构)

5、面向对象程序设计方法优点:与人类习惯的思维方法一致、稳定性好、可重用性好、易于开发大型软件产品、可维护性好。

6、传统的程序设计方法是面向过程的,其核心方法是以算法为核心。面向对象的程序设计方法是以对象为核心的。

7、对象是面向对象方法中最基本的单位。

8、对象有如下的一些基本特点:标识唯一性、分类性、多态性、封装性。

9、类:类是对象的抽象,对象是类的一个实体。

10、消息是一个实例与另一个实之间传递的信息。

11、继承:实现类之间共享属性和操作的机制。

1、计算机软件是计算机系统中与硬件相互依存的另一部分,是包括程序、数据及相关文档的完整集合。

2、软件危机的主要表现:

(1)软件需求的增长得不到满足。

(2)软件开发成本和进度无法控制。

(3)软件质量难以保证。

(4)软件不可维护或维护程序非常低。

(5)软件的成本不断提高。

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

3、软件工程包括三个要素:方法、工具和过程。方法是完成软件工程项目的技术手段,工具支持软件的开发、管理、文档生成,过程支持软件开发各个环节的控制、管理。

4、软件生命周期:通常将软件产品从提出、实现、使用维护到停止使用退役的过程称为软件的生命周期。

5、软件生命周期的三个阶段:软件定义、软件开发、软件运行维护。

6、软件工程工程的理论和技术性研究的内容主要包括:软件开发技术和软件工程管理。

7、需求分析阶段的工作,可以概括为四个方面:需求获取、需求分析、编写需求规格说明书、需求评审。

8、数据流图中的表示:表示加工;表示数据流;

表示数据的源或目的(潭)

9、软件需求规格说明书的作用是:便于用户、开发人员进行理解和交流;反映出用户的结构,可以作为软件开发工作的基础和依据;作为确认测试和验收的依据。

10、软件测试是为了发现错误而执行程序的过程。

11、软件测试的分类:从是否需要执行被测软件的角度可以分为静态测试和动态测试,按功能划分为白盒测试和黑盒测试。

12、软件测试过程可以分为四个步骤:单元测试、集成测试、验收测试(确认测试)、系统测试。

13、程序调度的任务是诊断和改正程序中的错误。

(注:可编辑下载,若有不当之处,请指正,谢谢!)

相关文档
最新文档