二级VF公共基础知识
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第一章数据结构与算法
一、算法
1、算法:是指解题方案的准确而完整的描述。
2、算法的基本特征:可行性、确定性、有穷性、拥有足够的情报。
3、算法的基本要素:一是对数据对象的运算和操作,二是算法的控制结构。
4、算法的运算和操作:算术运算、逻辑运算、关系运算、数据传输四类。
5、算法的控制结构:顺序、选择、循环三种基本结构。
6、算法的复杂度:包括时间复杂度和空间复杂度。所谓时间复杂度是指执行算法需要
的工作量。而空间复杂度是指执行这个算法所需要的内存空间。
二、《
三、
四、数据结构及其操作
1、数据结构:包括数据的逻辑结构、数据的存储结构及各种数据结构进行的运算。
2、数据的逻辑结构:是指反映数据元素之间逻辑关系的数据结构。
3、数据的存储结构:是指数据的逻辑结构在计算机存储空间中的存放形式,也称数据
的物理结构。常用的存储结构有顺序、链接、索引。
4、线性结构:一个非空的数据结构有且只有一个根结点,每一个结点最多有一个前件,
也最多有一个后件。没有前件的结点称为根结点;没有后件的结点的称为终端结点
(叶子结点)
5、线性表:是最简单最常用的线性结构。
6、线性表的顺序存储结构的特点:一是线性表中所有元素所占空间是连续的,二是各
数据元素在存储空间中是按逻辑顺序依次存放的。
7、:
8、栈:是限定在一端进行插入与删除的顺序存储线性表,栈是按照先进后出或后进先
出的原则组织数据的。
9、
10、栈的基本运算:入栈、退栈、读栈。当栈已满,不能进行入栈操作,这种情况称“上
溢”,当栈已空,不能退栈,称为“下溢”
11、队列:是指允许在一端进行插入、而在另一端进行删除的顺序存储线性表。队
列是按照先进先出或后进后出的原则组织数据的。
10、队列的基本运算:入队、退队。不能进行入队操作,这种情况称为“上溢”,当队
列为空,不能退队,称为“下溢”。
11、线性链表:线性表的链式存储结构。它克服了顺序存储结构的缺点,它的结点空间
可以动态申请与释放。它的数据元素的逻辑次序靠结点指针指示,不需要移动数据。便于插入和删除操作。
12、链式存储结构的缺点:一是每个结点指针域需占用存储空间,二是一种非随机存储
结构。
五、数与二叉树
1、|
2、树:一种简单的非线性结构。
3、根:没有前件的结点只有一个,称为树的根结点,简称根。
4、
5、叶子结点:没有后件的结点称为叶子结点。
6、度:一个结点所拥有的后件个数称为该结点的度。所有结点中最大的度称为该树的
度。
7、深度:树的最大层次称为树的深度。
8、二叉树:一种非线性结构。
9、二叉树的特点:一是二叉树只有一个根结点,二是每个结点最多有两棵子树,分别
为左子树与右子树。
10、,
11、二叉树的基本特征:
<1>在二叉树的第K层上,最多有2k-1个结点。
<2>深度为M的二叉树最多有2M-1个结点。
<3>在任意一棵二叉树中,度为0的结点总是比度为2的结点多一个。
<4>具有N个结点的二叉树,其深度至少为[log2N]+1
<5>具有N个结点的完全二叉树的深度为[log2N]+1
12、二叉树的存储结构:一般采用链式存储结构。
>
10、二叉树的遍历:
<1>前序遍序:先访问根结点,前序遍历左子树,前序遍历右子树。
<中序遍历>:中序遍历左子树,访问根结点,中序遍历右子树。
<后序遍历>:后序遍历左子树,后序遍历右子树,访问根结点。
六、
七、查找技术与排序技术
1、顺序查找:如线性表为无序表,或采用链式存储结构,只能用顺序查找。
2、二分法查找:只适用于顺序存储的有序表。
3、[
4、当长序为N的有序线性,在最坏的情况下,二分查找只需要比较log2N次,而顺序
查找比较需要N次。
5、排序:是指将一个无序序列整理成按值非递减顺序排列的有序序列。
6、排序方法:交换类排序法、插入类排序法、选择类排序法。
7、冒泡排序法:冒泡排序法是一种简单的交换类的排序方法。假设线性表的长度为N,
则在最坏的情况下需要的比较次数为:N(N-1)/2
8、希尔排序法:希尔排序法是一种插入类排序法。假设线性表的长度为N,则在最坏
的情况下需要比较次数为O(N1..5)
第二章程序设计基础
一、@
二、程序设计方法与风格
1、程序设计:就程序设计方法和技术的发展而言,主要经过了结构化程序设计和面向
对象的程序设计阶段。
2、程序设计的风格:最主要强调简单和清晰,程序必须是可以理解的。保证“清晰第
一,效率第二”。
3、结构化程序设计的主要原则:自顶向下、逐步求精、模块化、限制使用goto语句。
4、结构化程序的基本结构:顺序、选择、重复(循环)。
5、结构化程序设计的优点:一是程序便于理解、使用和维护,二是提交了编程工作的
效率,降低了软件开发成本。
三、
四、面向对象的程序设计
1、;
2、面向对象方法的主要优点:一是与人类习惯的思维方式一致,二是稳定性好,三是
可重用性好,四是易于开发大型软件产品,五是可维护性。
3、对象:客观世界里的任何实体都可以被看作是对象,它由一组属性和操作组成。
4、对象的基本特点:标识惟一性、分类性、多态性、封装性、模块独立性好。信息隐
蔽是通过对象的封装性来实现的。
5、类:具有共同属性、共同方法的对象的集合。
6、实例:是指一个具体的对象,对象属于类的实例。
7、消息:在面向对象方法中,一个对象请求另一个对象为其服务的方式是通过发消息
完成的。
8、继承:在面向对象方法中,类之间共享属性和操作的机制称为继承。
9、
10、!
11、多态性:同样的消息被不同的对象接受可导致完全不同的行为。
第三章、软件工程基础
一、软件工程基本概念
1.计算机软件:是包括程序、数据及相关文档的完整集合。
2.软件按功能可以分为:应用软件、系统软件、支撑软件(工具软件)
3.软件工程概念的出现源自软件危机。
4.软件工程:是应用于计算机软件的定义、开发和维护的一整套方法、工具、文档、实践
标准和工序。
5.软件工程的要素:方法、工具、过程。方法是完成软件工程项目的技术手段;工具支
持软件的开发、管理、文档的生成,过程支持软件开发的各个环节的控制、管理。
6.,
7.
8.软件工程过程:是把输入转化为输出的一组彼此相关的资源和活动。
9.软件工程过程的基本活动:一是软件规格说明,二是软件开发,三是软件确认,四是软
件演进。
10.软件生命周期:将软件产品从提出、实现、使用维护到停止使用退役的过程。
11.软件生命周期分为软件定义、软件开发、软件运行维护三个阶段。
12.软件工程的理论内容主要包括:软件开发技术和软件工程管理。
13.软件开发技术包括:软件开发方法学、开发过程、开发工具和软件工程环境。
14.软件工程管理包括:软件管理学、软件工程经济学、软件心理学。
15.¥
16.软件工程的原则包括:抽象、信息隐蔽、模块化、局部化、确定性、一致性、完备性和
可应证性。
二、结构化分析方法
1.需求分析:将创建所需要的数据模型、功能模型和控制模型进行分析。
2.需求分析的工作:需求获取、需求分析、编写需求规格说明书、需求评审
3.需求分析的方法:结构化分析方法、面向对象的分析方法。