二级VFP公共基础知识总结

合集下载

二级VFP公共基础各章重要内容

二级VFP公共基础各章重要内容

第1章数据结构与算法1.1 算法算法是指解题方案准确而完整的描述(问题处理方案准确而完整的描述)算法不等于程序,程序也不等于算法算法复杂度主要包括时间复杂度和空间复杂度。

算法的时间复杂度是指执行算法所需要的计算工作量(算法在执行过程中所需要的基本运算次数)算法的空间复杂度是指算法在执行过程中所需要的计算机存储空间时间复杂度和空间复杂度都是越小越好算法的时间复杂度和空间复杂度没有任何联系。

算法的基本特征1.2 数据结构1、逻辑结构与存储结构逻辑结构:各数据元素之间所固有的逻辑关系存储结构:数据的逻辑结构在计算机中的表示一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率程序执行的效率与数据的存储结构密切相关逻辑结构和存储结构没有必然联系2、线性结构与非线性结构只有一个结点的树就是线性的错树是非线性,只要有树这个字的就是非线性的只要有栈和队列的都是线性结构1.3 线性表及其顺序存储结构1、线性表的顺序存储顺序存储:只能用于表示线性结构其在内存中存储空间必须连续,且前件元素一定存储在前面。

1.4 栈和队列每次必考,有时会考两个题栈:栈是线性表,一端(栈底bottom)封闭另一端(栈顶top)开口(在栈中只能插入元素而不能删除元素,在栈中只能删除元素而不能插入元素错误)插入和删除操作都只能在一端(栈顶),并且插入和删除元素只需要改变栈顶指针(top),不需要改变栈底指针(bottom)。

在栈中,栈底指针不变,栈中元素随栈顶指针的变化而动态变化。

特点:先进后出、后进先出栈具有记忆功能栈中的元素个数计算|top-bottom|+1队列:先进先出、后进后出数据结构分为线性结构和非线性结构,带链的队列属于线性结构。

队列是线性表,一端插入(队尾rear)另一端删除(对头front)线性表的存储结构主要分为顺序存储结构和链式存储结构。

队列是一种特殊的线性表,循环队列是队列的顺序存储结构。

(循环队列通常采用数组的方式进行数据的存储,因此所有元素所占的存储空间是连续的,各数据元素在存储空间中是按逻辑顺序依次存放的。

计算机二级VF重要知识点

计算机二级VF重要知识点

Esofte(软)计算机二级Visual FoxPro 数据库程序设计——知识点整理资料文件扩展名及备注文件扩展名第一章数据库基础知识1.数据处理是指将数据转换成信息的过程。

2.数据处理的中心问题是数据管理。

数据管理经历了①人工管理阶段②文件系统阶段③数据库系统阶段在①②阶段存在大量数据冗余,即程序与程序之间存在大量的数据重复,数据的大量重复会造成数据不一致,指值的不一致,不是类型的不一致。

3.数据库阶段的特点:提高了数据共享性、减少冗余度、提高数据的一致性和完整性、提高了数据与程序的独立性、减少应用程序的开发和维护代价。

4.数据库管理系统DBMS;数据库应用系统DBAS;数据库系统DBS;数据DB数据库管理员DBA;DBS包括DBMS和DB5.数据模型(指描述数据及关系的一种方法)面向对象不同可以分为①概念模型(E-R模型也叫实体联系模型:实体用矩形表示,属性用椭圆表示,联系用菱形表示)②逻辑模型③物理模型6.关系:一个关系就是一张二维表,每个关系有一个关系名,一个关系存储为一个文件,称为表,扩展名.dbf。

7.元组:在二维表中,每一行是一个元组,即一条具体记录。

属性:二维表中垂直的列为属性,即表的字段名。

8.域:属性的取值范围。

9.关键字:属性或属性的组合,关键字的值能够惟一标识一个元组。

(主关键字和候选关键字就起惟一标识一个元组的作用)10.外部关键字:如果表中的一个字段不是本表总的主关键字或候选关键字,而是另外一个表中的主关键字或候选关键字,这个字段就被称为外部关键字。

11.联系:实体之间的对应关系为联系。

12.实体间的联系:一对一,一对多,多对多13.数据库中的数据模型:网状模型、层次模型、关系模型14.vfp采用的是关系模型。

15.关系:表关系名:表名属性:字段元组:记录行:记录,元组列:字段,属性16.传统的集合运算:并、差、交17.专门的关系运算:选择(水平方向) for, while, where投影(垂直方向) fields ,select联接(一对一,一对多,多对多)18.项目:是指文件、数据、文档、和对象的集合。

VF复习资料课本复习知识汇总

VF复习资料课本复习知识汇总

2011年9月份全国计算机等级考试二级VF考试复习纲要目录第一章数据库基础知识 (2)第二章VF程序设计基础 (3)第一部分 (3)第二部分程序设计基础 (3)第三部分函数部分 (5)第三章数据库及其操作 (26)第四章关系数据库标准语言SQL (32)4.1概述 (32)4.2 查询功能 (33)4.3操作功能 (34)4.4 定义功能 (35)第五章查询与视图 (37)第六章表单设计与运用 (40)第七章菜单设计与应用 (46)第八章报表设计 (48)第一章数据库基础知识1、数据库管理系统:DBMS;数据库应用系统:DBAS;数据库系统:DBS;数据:DBDBS包括DBMS,DBAS,DB2、实体间的联系:一对一,一对多,多对多。

3、数据库中的数据模型:网状模型,层次模型,关系模型。

4、关系:一个关系就是一个二维表,每一个关系有一个关系名。

5、元组:二维表中的行称为元组。

6、属性:二维表中的列称为属性。

7、域:属性的取值范围。

8、关系→表;关系名→表名;属性→字段;元组→记录;行→记录,元组;列→字段,属性。

9、传统的集合运算:并,差,交。

10、专门的关系运算:选择(水平方向)for,while,where投影(垂直方向)fields,select联接(一对一,一对多,多对多)11、定义数组:dime/declare 数组名(3,4)第二章VF程序设计基础第一部分1、创建项目:①通过菜单创建②命令:creat project项目名2、打开项目管理器:①通过“文件→打开”菜单项②命令:modify project 项目名3、各类文件选项卡:①数据选项卡(数据库,自由表,查询,视图)②文档选项卡(表单,报表,标签)③类④代码⑤其他第二部分程序设计基础1、概念:是命令的集合,分行存储在磁盘上,按照人为的顺序依次输出的过程。

2、建立、修改:modify command 程序名3、运行:do 程序名4、基本输入语句:(以求圆的面积为例)①.input”请输入圆的半径”to r②.accept ”请输入圆的半径”to r③.@10.10 say “请输入圆的半径” get rread④.wait ”请等候……”window⑤. messagebox (“欢迎光临!”,48,“欢迎信息”)5、程序的结构:顺序结构选择结构(分支、判断)循环结构(条件循环、步长循环、扫描循环)6、程序的控制语、注释语①.exit 退出、终止②.loap 中止③.quit 关闭系统④.&& 同行注释⑤. * 换行注释⑥.error 不参与程序的执行6、程序模块7、变量的作用域①.公共变量(public):作用于程序运行的始终②.局部变量(local):只在本过程中使用,即不上传,也不接收③.私有变量(private):在程序运行过程中自动隐藏,成程序结束时显示本身第三部分函数部分1、字段数据类型(11种)* N包括Y,F,B,I2、变量:在程序运行过程中,其值可能发生变化的量。

计算机二级VF复习总结

计算机二级VF复习总结

计算机⼆级VF复习总结全国计算机⼆级考试VF知识点总结⽬录说明1 .................................. 错误!未定义书签。

第⼀章 VF数据库基础2 (2)第三章 VF数据库及其操作6 (6)第⼆章 VF程序设计基础12 (12)第四章关系数据库标准语⾳SQL25 (25)第五章查询与视图31 (31)第六章表单设计与应⽤ (32)第七章菜单设计与应⽤ (36)第⼋章报表设计应⽤ (37)说明:代表输⼊其后⾯的数据或计算结果;:代表在⼀⾏内输出结果;[]:代表可选项,可有可⽆;<>:代表必写或必填;|:代表两边任选其⼀;():加在公式⾥⾯的是必须要带上的,⽐如SQL嵌套公式;加在公式外⾯的是解释说明*以下章节不是按课本拍的序,⽽是根据课本整体的难度以及考试⽅式重新合理的安排的,所以下⾯的章节表⾯上看有点乱,实际上是从简单到难的⼀个过程.第九章没有总结,感兴趣的同学⾃⼰总结;第⼀章⼀、VF的菜单:①VF有三种运⾏⽅式:利⽤菜单系统实现⼈机对话、在命令窗⼝直接输⼊命令、利⽤各种⽣成器⾃动产⽣程序;②VF的菜单可⽤⿏标点击使⽤,也可以借⽤alt加其访问键(热键)使⽤;③VF菜单不是⼀层不变的,它会随着当前的操作的变化⽽变化;④所有菜单项⽬名称的名字都有⼀个带有⼀个下划线的字母,该字母是菜单的“热键”。

按住Alt + “热键”就能激发该菜单项;⑤退出系统的命令:QUIT三、VF的⼯具栏:①显⽰与隐藏⼯具栏:点击[显⽰]→[⼯具栏]→[常⽤]②VF的⼯具栏分为两种:系统⼯具栏和⾃定义⼯具栏特点:A、系统⼯具栏不能删除,但可以定制(修改),也可以重置。

B、⾃定义⼯具栏不能重置,但可以定制(修改),也可以删除。

四、VF的命令:①主窗⼝或主屏幕是⽤来显⽰命令的执⾏或计算结果;②设置显⽰结果的字号:_screen.fontsize=<⾃定义的字号>③清除主屏幕内容的命令:clear④命令窗⼝的调⽤:A、点击⼯具栏上的[命令窗⼝]按钮B、点击[窗⼝] →[命令窗⼝]C、使⽤组合键:ctrl+F2 显⽰、ctrl+F4 隐藏;⑤VF命令的使⽤规则:A、命令中的标点必须是英⽂状态(ctrl+>:中英标点切换|ctrl+空格:中英切换);B、命令中的单词不区分⼤⼩写;C、命令输写后必须回车执⾏(否则该命令相当于没有写);D、⼀⾏只能写⼀条命令;E、⼀条命令过长时,可以分⾏来写,但要在换⾏处加“;”F、被执⾏过的命令会⾃动保存在命令窗⼝上,并可以反复执⾏;G、如果命令单词过长,可以省略到前4个字母;H、如果命令单词输写正确,字体的颜⾊是蓝⾊;五、项⽬⽂件:①项⽬的扩展名:.pjx②在项⽬中可以建VF的所有⽂件③建⽴项⽬有两种⽅法:A、点击[新建] →[项⽬]B、⽤命令create project <项⽬⽂件名>④项⽬:是指⽂件、数据、⽂档和对象的集合;⑤“数据”选项卡:包含数据库、⾃由表、查询和视图;⑥“⽂档”选项卡:包含表单、报表和标签;⑦“代码”选项卡:包含扩展名为.prg的程序⽂件、函数库API Libraries和应⽤程序.app⽂件;⑧“其他”选项卡:包含⽂本⽂件、菜单⽂件和其他等;⑨⼀般题⽬要求建⽴和打开⼀个项⽬时,紧接着会要求向该项⽬中添加或新建⼀个数据库;六、向导、设计器、⽣成器1、A、向导可以创建表单、编排报表的格式、建⽴查询、制作图表、⽣成数据透视表、⽣成交叉报表以及在Web上按HTML 格式发布等;B、打开⽅式:①[新建] →[向导] ②在[⼯具]菜单中,选择[向导]2、设计器可以利⽤各种设计器使得创建表、表单、数据库、查询和报表3、⽣成器是带有选项卡的对话框,⽤于简化对表单、复杂控件和参照完整性代码的创建和修改过程。

计算机二级VFP知识总结

计算机二级VFP知识总结

计算机二级VFP知识总结一、数据库基础知识(一)计算机数据管理的发展1.数据与数据处理数据是指存储在某一种媒体上能够识别的物理符号。

数据的概念包括两个方面:其一是描述事物特性的数据内容;其二是存储在某一种媒体上的数据形式。

数据形式可以是多种多样的。

数据处理是指将数据转换成信息的过程。

从数据处理的角度而言,信息是一种被加工成特定形式的数据,这种数据形式对于数据接收者来说是有意义的。

2.计算机数据管理数据处理的中心问题是数据管理。

计算机对数据的管理是指对数据的组织、分类、编码、存储、检索和维护提供操作手段。

计算机在数据管理方面也经历了由低级到高级的发展过程。

计算机数据管理随着计算机硬件、软件技术和计算机应用范围的发展而不断发展,多年来经历了人工管理、文件系统、数据库系统、分布式数据库系统和面向对象数据库系统等几个阶段。

(二)数据库系统1.有关数据库的概念①数据库数据库(DataBase)是存储在计算机存储设备上、结构化的相关数据集合。

它不仅包括描述事物的数据本身,而且还包括相关事物之间的联系。

②数据库应用系统数据库应用系统是指系统开发人员利用数据库系统资源开发出来的,面向某一类实际应用的应用软件系统。

③数据库管理系统数据库管理系统DBMS可以对数据库的建立、使用和维护进行管理。

④数据库系统数据库系统是指引进数据库技术后的计算机系统,实现有组织地、动态地存储大量相关数据,提供数据处理和信息资源共享的便利手段。

数据库系统由五部分组成:硬件系统、数据库集合、数据库管理系统及相关软件、数据库管理员和用户。

2.数据库系统的特点数据库系统的主要特点如下:①实现数据共享,减少数据冗余②采用特定的数据模型③具有较高的数据独立性④有统一的数据控制功能(三)数据模型1.实体的描述①实体客观存在并且可以相互区别的事物称为实体。

②实体的属性描述实体的特性称为属性。

③实体集和实体型字段值的集合表示一个实体,而属性的集合表示一种实体的类型,称为实体型。

全国计算机等级考试二级VF知识点(完整版)

全国计算机等级考试二级VF知识点(完整版)

1、数据处理的中心问题是数据管理。

多年来,数据管理经历了人工管理阶段、文件管理阶段、数据库系统阶段。

2、人工管理阶段面对的主要问题:1、数据不能独立。

2、数据不能长期保存。

3、文件管理阶段面对的主要特点:1、数据与程序分开。

2、数据能长期保存。

3、数据没有完全独立。

4、存在数据冗余。

5、数据不能集中管理。

4、数据库系统阶段特点:1、实现了数据的结构化。

2、实现了数据共享。

3、实现了数据独立。

4、实现了数据统一控制。

5、三者之间的区别:主要在于数据与程序之间的关系。

在人工管理阶段,数据与程序不具有独立性。

在文件系统阶段,程序和数据有了一定的独立性。

在数据库系统阶段提供了数据与应用程序的独立性。

6、数据库(DATA BASE 简写为DB)是按一定的组织形式存储在一起的相互关联的数据集合。

数据库具有数据的结构化、独立性、共享性、冗余量小、安全性、完整性和并发控制的基本特点。

7、数据库管理系统(DATA BASE MANAGEMENT SYSTEM 简写为DBMS)是数据库系统的核心部分。

而数据库运行管理和控制例行程序是数据库管理系统的核心部分。

8、数据库系统(DATA BASE SYSTEM 简写为DBS)具体包括计算机硬件、操作系统、数据库、数据库管理系统和建立在该数据库之上的相关软件、数据库管理员和用户等5个部分。

9、数据库应用系统(DATA BASE APPLICATION SYSTEMS 简写为DBAS)通常由数据库和应用程序组成。

10、数据模型是指数据库的组织形式,它取决于数据库中数据之间联系的表达方式。

数据库管理系统所支持的数据模型分为3类,层次模型、网状模型和关系模型。

11、关系模型:用二维表结构来表示实体以及实体之间联系的模型称为关系模型,在关系模型中把数据看成是二维表中的元素,一张二维表就是一个关系。

12、关系术语:1、关系:一个关系就是一张二维表,在VFP中,一个关系存储为一个文件,文件的扩展名为.dbf,称为表。

全国计算机二级vfp公共基础知识考试要点

全国计算机二级vfp公共基础知识考试要点

国家二级公共根底知识考试要点第一章数据构造及算法1.1 算法算法:是指解题方案的准确而完整的描述。

算法不等于程序,也不等计算机方法,程序的编制不可能优于算法的设计。

算法的根本特征:是一组严谨地定义运算顺序的规那么,每一个规那么都是有效的,是明确的,此顺序将在有限的次数下终止。

特征包括:〔1〕可行性;〔2〕确定性,算法中每一步骤都必须有明确定义,不充许有模棱两可的解释,不允许有多义性;〔3〕有穷性,算法必须能在有限的时间内做完,即能在执行有限个步骤后终止,包括合理的执行时间的含义;〔4〕拥有足够的情报。

算法的根本要素:一是对数据对象的运算和操作;二是算法的控制构造。

指令系统:一个计算机系统能执行的所有指令的集合。

根本运算和操作包括:算术运算、逻辑运算、关系运算、数据传输。

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

算法根本设计方法:列举法、归纳法、递推、递归、减斗递推技术、回溯法。

算法复杂度:算法时间复杂度和算法空间复杂度。

算法时间复杂度是指执行算法所需要的计算工作量。

1.2 数据构造的根本根本概念数据构造研究的三个方面:〔1〕数据集合中各数据元素之间所固有的逻辑关系,即数据的逻辑构造;*〔2〕在对数据进展处理时,各数据元素在计算机中的存储关系,即数据的存储构造;[2007.9 ]〔3〕对各种数据构造进展的运算。

如:2007.9:〔6〕以下表达中正确的选项是 [1.2]A〕数据的逻辑构造及存储构造必定是一一对应的B〕由于计算机存储空间是向量式的存储构造,因此,数据的存储构造一定是线性构造C〕程序设计语言中的数组一般是顺序存储构造,因此,利用数组只能处理线性构造D〕以上三种说法都不对数据构造是指相互有关联的数据元素的集合。

数据的逻辑构造包含:线性表、栈、队列、二叉树、图〔1〕表示数据元素的信息;〔2〕表示各数据元素之间的前后件关系。

数据的存储构造有顺序、链接、索引等。

线性构造条件:数组、线性表、栈、队列〔1〕有且只有一个根结点;〔2〕每一个结点最多有一个前件,也最多有一个后件。

VF知识点总结

VF知识点总结

概念知识点总结1、数据库的基本理论和VF 数据库操作2、数据与程序设计3、SQL 语句4、面向对象程序设计及表单、报表、菜单数据库的基本理论和VF 数据库操作(第1、2、3、4、6章)一、数据库系统基本理论1、理解数据库系统的几个基本概念以及它们的关系 数据库(DB )、数据库管理系统(DBMS )、数据库应用系统(DBAS )和数据库系统(DBS )2、掌握实体之间的联系,可以判断出实际问题中属于那种联系 一对一、一对多、多对多3、弄清三大数据模型的结构形式:层次模型、网状模型和关系模型 我们现在所用到的数据库都是关系数据库(a )(b )(c )4、理解关系术语关系(就是二维表,记录的集合);元组(行、记录);属性(列、字段);域(一个字段的取值范围);关键字(关键的字段,唯一能标志一个元组的字段或字段的组合);外部关键字(不是本表的关键字,但是是其他表的关键字;用来建立表间的联系)5、关系运算理解传统的集合运算(并、交、差、笛卡尔积)和专门的关系运算(选择、投影、连接包括等值连接和自然连接)二、数据表操作1、了解表操作的一些命令,尤其以下几条:LIST显示记录:LIST | DISPLAY [FIELDS <字段名表>][<范围>] [FOR<条件表达式>]限定条件用FOR短语LOCATE条件定位:LOCATE FOR<条件表达式>本命令定位在满足条件的第一条记录,若想定为满足条件的下一条记录,必须用CONTINUE用FOUND()函数为T判断是否有满足条件的记录(也可用EOF()为F)APPEND为追加记录;INSERT为插入记录REPLACE修改记录:REPLACE <字段名1> WITH <表达式1> [FOR <条件表达式>]2、删除操作分两步走:DELETE与PACKDELETE是逻辑删除,也就是添加删除标记,PACK才是真正物理删除;逻辑删除的记录还可以恢复(RECALL)3、理解工作区的概念系统提供了32767个工作区,可以在不同的工作区同时打开多个表,使用工作区用其编号1~32767,或者别名,前十个工作区有别名:A~JSELECT 0表示使用最小未用过的工作区4、建立表之间的临时关联一个为主表,一个为子表,使用SET RELATION TO …INTO…语句要求两个表必须在不同的工作区打开可以使用SET RELATION TO解除关联三、数据库操作1、理解数据库文件它并不真正的存储数据,只是对存储数据的文件进行统一的管理建立数据库后,形成三个同名文件.dbc .dct .dcx2、理解自由表与数据库表的区别与联系区别:可以看一下“表设计器”自由表不能设置长表名、长字段名、标题、输入掩码、字段有效性规则、默认值、注释等内容自由表不能设置主索引自由表可以添加到数据库中形成数据库表(ADD TABLE…);数据库表可以移出形成自由表,相应的设置丢失,主索引变为候选索引(REMOVE TABLE…)3、掌握索引的概念索引就是排序,但它是逻辑排序,排列的不是实际记录,而是记录指针,排序的结果存放在索引文件中建立索引的主要目的是为了提高查询速度(在有序的集合中查询某个个体很显然比无序中查询快得多)A、建立索引可以通过命令实现:INDEX ON <索引关键字表达式> TO <独立索引文件名> | TAG <标识名> [ASCE | DESC][UNIQUE] [CANDICATE]可以建普通索引(命令中不需表示)、候选索引(CANDICATE)、唯一索引(UNIQUE)B、可以以在表设计器中建立索引索引不是真正排序,表的排序命令为SORT,是对记录的排序,结果形成新的表文件.dbf 4、区别索引文件的类型索引文件分为独立索引文件(.idx 存放一条索引结果)和复合索引文件(.cdx 存放多条索引结果)复合索引文件又分为结构复合索引文件(与表同名)和非结构复合索引文件结构复合索引文件因其与表同名,随着表的打开而打开,表的关闭而关闭,在表被修改时自动同步修改,现在是主要应用的索引文件5、区别索引的类型主索引和候选索引意义相似,建立主索引和候选索引都要求关键字表达式的值唯一,没有重复。

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

教材:《全国计算机等级考试二级教程—公共基础知识》高等教育出版社二级公共基础知识总结第一章数据结构与算法算法算法:是一组有穷指令集,是解题方案的准确而完整的描述。

通俗地说,算法就是计算机解题的过程。

算法不等于程序,也不等于计算方法,程序的编制不可能优于算法的设计。

算法是一组严谨地定义运算顺序的规则,每一个规则都是有效的,且是明确的,此顺序将在有限的次数下(1(2(3(4算法的基本要素:一是对数据对象的运算和操作;二是算法的控制结构。

指令系统:一个计算机系统能执行的所有指令的集合。

基本运算和操作包括:算术运算、逻辑运算、关系运算、数据传输。

算法的三种基本控制结构:顺序结构、选择结构、循环结构。

算法基本设计方法:列举法、归纳法、递推、递归、减半递推技术、回溯法。

算法效率的度量—算法复杂度:算法时间复杂度和算法空间复杂度。

算法时间复杂度:指执行算法所需要的计算工作量。

即算法执行过程中所需要的基本运算次数。

通常,一个算法所用的时间包括编译时间和运行时间。

算法空间复杂度:指执行这个算法所需要的内存空间。

包括算法程序所占的空间,输入的初始数据所占的空间,算法执行过程中所需的额外空间。

1.2 数据结构的基本概念数据结构:指相互有关联的数据元素的集合。

数据结构研究的三个方面:(1(2(3)对各种数据结构进行的运算。

数据的逻辑结构应包含:(1)表示数据元素的信息;(2)表示各数据元素之间的前后件关系(指逻辑关系,与存储位置无关)。

数据的逻辑结构在计算机存储空间中的存放形式称为数据的存储结构,也称数据物理结构。

数据的存储结构有顺序、链接、索引等。

线性结构的条件,(一个非空数据结构):(1)有且只有一个根结点;(2)每一个结点最多有一个前件,也最多有一个后件。

非线性结构:不满足线性结构条件的数据结构。

1.3 线性表及其顺序存储结构非空线性表的结构特征:(1)且只有一个根结点a1,它无前件;(2)有且只有一个终端结点an,它无后件;(3)除根结点与终端结点外,其他所有结点有且只有一个前件,也有且只有一个后件。

结点个数n n=0线性表的顺序存储结构具有以下两个基本特点:(1)线性表中所有元素所占的存储空间是连续的;(2)线性表中各数据元素在存储空间中是按逻辑顺序依次存放的。

元素ai的存储地址为:ADR(ai)=ADR(a1)+(i-1)k,ADR(a1)为第一个元素的地址,k代表每个元素占的字节数。

顺序表的运算:查找、插入、删除。

1.4线性链表结点由两部分组成:(1)(2)在链式存储结构中,存储数据结构的存储空间可以不连续,各数据结点的存储顺序与数据元素之间的逻辑关系可以不一致,而数据元素之间的逻辑关系是由指针域来确定的。

链式存储方式即可用于表示线性结构,也可用于表示非线性结构。

线性单链表中,HEAD称为头指针,HEAD=NULL(或0Llink)指向后件结点。

线性链表的基本运算:查找、插入、删除。

1.5栈和队列其允许插入与删除的一端称为栈顶,用指针top表示栈顶位置。

不允许插入与删除的另一端称为栈底,用指针bottom表示栈底。

栈的存储方式有顺序存储和链式存储。

栈的基本运算:(1) 入栈运算,在栈顶位置插入元素;(2) 退栈运算,删除元素(取出栈顶元素并赋给一个指定的变量);(3) 读栈顶元素,将栈顶元素赋给一个指定的变量,此时指针无变化。

用rear指针指向队尾,用front指针指向队头元素的前一个位置。

队列运算包括:(1) 入队运算:从队尾插入一个元素;(2) 退队运算:从队头删除一个元素。

队列的顺序存储结构一般采用队列循环的形式。

循环队列s=0表示队列空;s=1且front=rear表示队列满。

计算循环队列的元素个数:“尾指针减头指针”,若为负数,再加其容量即可。

1.6 树与二叉树树是一种简单的非线性结构,其所有元素之间具有明显的层次特性。

在树结构中,每一个结点只有一个前件,称为父结点。

没有前件的结点只有一个,称为树的根结点,简称树的根。

每一个结点可以有多个后件,称为该结点的子结点。

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

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

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

(1) 非空二叉树只有一个根结点;(2) 每一个结点最多有两棵子树,且分别称为该结点的左子树与右子树。

二叉树有2m-1个结点。

二叉树基本性质:(1)在二叉树的第k层上,最多有2k-1(k≥1)个结点;(2)深度为m的二叉树最多有2m-1个结点;(3)度为0的结点(即叶子结点)总是比度为2的结点多一个;(4)具有n个结点的二叉树,其深度至少为[log2n]+1,其中[log2n]表示取log2n的整数部分(5) 具有n个结点的完全二叉树的深度为[log2n]+1;(6) 设完全二叉树共有n个结点。

如果从根结点开始,按层序(每一层从左到右)用自然数1,2,…n给结点进行编号(k=1,2….n),有以下结论:①若k=1,则该结点为根结点,它没有父结点;若k>1,则该结点的父结点编号为INT(k/2);②若2k≤n,则k结点的左子结点编号为2k;否则该结点无左子结点(也无右子结点);③若2k+1≤n,则编号为k的结点的右子结点编号为2k+1;否则该结点无右子结点。

补充:增加度为1的结点不会影响二叉树的叶子结点数,每增加一个度为2的结点便会增加一个叶子结点,没有度为2的结点时叶子结点数为1。

已知完全二叉树有x个结点,求其叶子结点数:①确定层数为k;②第k层的结点数y=x-(2 k-1-1);③第k-1层的叶子结点数n=2 (k-1)-1-y/2<若y/2有余,则要加1>;④最后y+n。

二叉树的遍历:(1(树根在第一,下走不跳结点)(2(有左先左,再寻根,后找右。

最左边的结点最先遍历,最右边的结点最后遍历)(3(有左先左,再找右,后寻根,到最右一路上行,树根在最后)小结:逻辑结构可分为线性表和非线性表。

线性表包括栈、队列,其存储方式为顺序存储、链式存储均可。

链式型有:线性链表,带链的栈,带链的队列,循环链表等。

非线性表包括树(二叉树),其存储方式为链式存储。

1.7 查找技术只能使用顺序查找的两种情况:(1)线性表为无序表,不管是顺序存储还是链式存储;(2)表采用链式存储结构,即使是有序线性表。

n序查找需要比较n次。

1.8 排序技术排序是指将一个无序序列整理成按值非递减顺序排列的有序序列。

交换类排序法:(1(2 ) 快速排序法。

插入类排序法:(1(2)选择类排序法:(1)简单选择排序法,(2)相比以上几种(除希尔排序法外),堆排序法的时间复杂度最小。

第二章程序设计基础2.1 程序设计设计方法和风格“清晰第一、效率第二”已成为当今主导的程序设计风格。

形成良好的程序设计风格需注意:(详见书P27)1、源程序文档化;2、数据说明的方法;3、语句的结构;4、输入和输出。

2.2 结构化程序设计结构化程序设计方法的四条原则是:1234结构化程序的基本结构及特点:(1)顺序结构:一种简单的程序设计,最基本、最常用的结构;(2)选择结构:又称分支结构,包括简单选择和多分支选择结构,可根据条件,判断应该选择哪一条分支来执行相应的语句序列;(3)循环结构:又称重复结构,可根据给定条件,判断是否需要重复执行某一相同或类似的程序段。

结构化程序设计的特点:只有一个入口和出口2.3 面向对象的程序设计面向对象的程序设计的首次提出以60年代末挪威奥斯陆大学和挪威计算机中心研制的SIMULA语言为标志。

面向对象方法的优点:(1)与人类习惯的思维方法一致;(2)稳定性好;(3)可重用性好;(4)易于开发大型软件产品;(5)可维护性好。

面向对象的程序设计方法中,对象是由数据的容许的操作组成的封装体,是系统中用来描述客观事物的一个实体,是构成系统的一个基本单位,由一组表示其静态特征的属性和它可执行的一组操作组成。

对象的基本特点:(1)标识惟一性;(2)分类性;(3)多态性;(4)封装性;(5)模块独立性好。

类是指具有共同属性、共同方法的对象的集合。

类是关于对象性质的描述。

类是对象的抽象,对象是其对应类的一个实例。

答某一要求的信息,它统一了数据流和控制流。

消息的组成包括:(1)接收消息的对象的名称;(2)消息标识符,也称消息名;(3)零个或多个参数。

继承是使用已有的类定义作为基础建立新类的定义技术,广义指能够直接获得已有的性质和特征,而不必重复定义他们。

继承具有传递性,一个类实际上继承了他上层的全部基类的特性。

继承分单继承和多重继承。

单继承指一个类只允许有一个父类,即类等级为树形结构;多重继承指一个类允许有多个父类。

第三章软件工程基础3.1 软件工程基本概念软件的特点包括:(1)软件是一种逻辑实体,具有抽象性;(2)软件的生产与硬件不同,它没有明显的制作过程;(3)软件在运行、使用期间不存在磨损、老化问题;(4)软件的开发、运行对计算机系统具有依赖性,受计算机系统的限制,这导致了软件移植的问题;(5)软件复杂性高,成本昂贵;(6)软件开发涉及诸多的社会因素。

软件按功能分为应用软件、系统软件、支撑软件(或工具软件)。

软件危机主要表现在成本、质量、生产率等问题。

说就是使软件走向工程化。

软件工程的核心思想是把软件产品看作是一个工程产品来处理。

软件工程过程是把软件转化为输出的一组彼此相关的资源活动,包含4种基本活动:(1)P(plan)——软件规格说明;(2)D(do)——软件开发;(3)C(check)——软件确认;(4)A(action)——软件演进。

主要活动阶段是:(1)可行性研究与计划制定;(2)需求分析;(3)软件设计(概要设计和详细设计);(4)软件实现;(5)软件测试;(6)运行和维护。

软件工程的目标:在给定成本、进度的前提下,开发出具有有效性、可靠性、可理解性、可维护性、可重用性、可适应性、可移植性、可追踪性和可互操作性且满足用户需求的产品。

基本目标:付出较低的开发成本;达到要求的软件功能;取得较好的软件性能;开发软件易于移植;需要较低的费用;能按时完成开发,及时交付使用。

软件开发环境或软件工程环境是指全面支持软件开发全过程的软件工具的集合。

软件管理学包括人员组织、进度安排、质量保证、配置管理、项目计划等。

软件工程基本原则:抽象、信息隐蔽、模块化、局部化、确定性、一致性、完备性和可验证性。

3.2 结构化分析方法软件定义阶段中,可行性研究与计划的制定是确定待开发目标和总的要求,给出它的功能、性能、可靠性以及接口等方面的可能方案,制定完成开发的实施计划。

需求分析,对待开发软件提出的需求分析并给出详细的定义。

需求分析阶段的工作:需求获取,需求分析,编写需求规格说明书,需求评审。

相关文档
最新文档