搜档网
当前位置:搜档网 › 数据库知识点重点章节总结

数据库知识点重点章节总结

数据库知识点重点章节总结
数据库知识点重点章节总结

1. 基本概念

(1) 数据库(DB):是一个以一定的组织形式长期存储在计算机内的,有组织的可共享的相关数据概念(2) 数据库管理系统(DBMS);是位于用户与操作系统之间的一层数据管理软件,是数据库系统的核心(3) 数据库系统(DBS);计算机系统中引入数据库后的系统构成(4) 实体;凡是现实世界中存在的可以相互区别开,并可以被我们所识别的事物.概念等对象均可认为是实体(5) 属性;是实体所具有的某些特征,通过属性对实体进行刻画.实体由属性组成(6) 码;唯一标识实体的属性集称为码(7) 域;属性的取值范围称为该属性的域

(8) 实体型;具有相同属性的实体必然具有共同的特征和性质。用实体名和属性名集合来抽象和刻画同类实体,称为实体型。(9) 实体集;同一类型实体的集合。(10) 1 :1联系:如果实体集E1中每个实体至多和实体集E2中的一个实体有联系,反之亦然,那么E1和E2的联系称为“1:1联系”。1:N联系:如果实体集E1中每个实体可以与实体集E2中任意个(零个或多个)实体有联系,而E2中每个实体至多和E1中一个实体有联系,那么E1和E2的联系是“1:N联系”。M:N联系:如果实体集E1中每个实体可以与实体集E2中任意个(零个或多个)实体有联系,反之亦然,那么E1和E2的联系称为“M:N联系”。(11)现实世界(现实世界是指我们要管理的客户存在的各种事物.事物之间的发生.变化过程)、观念世界(信息世界)、数据世界

2.数据管理技术的发展阶段

人工管理阶段(数据不保存,系统没有专用的软件对数据进行管理,数据不共享,数据不具有独立性)、文件系统阶段(数据以文件形式可长期保存下来,文件系统可对数据的存取进行管理,文件组织多样化,程序与数据之间有一定独立性)、数据库系统阶段(数据结构化,数据共享性高,冗余少于且易扩充,数据独立性高,有统一的数据控制功能)

3. 数据库系统的特点

(1) 数据结构化

(2) 共享性高,冗余度低,易扩充

(3) 独立性高

(4) 由DBMS统一管理和控制

4. DBMS的数据控制功能

(1) 数据的安全性保护

(2) 数据的完整性检查

(3) 并发控制

(4) 数据库恢复

5. 数据模型的组成要素

数据结构数据结构是所研究的对象类型的集合,是刻画一个数据模型性质最重要的方

面,是对系统静态特性的描述。

数据操作数据操作是指对数据库中各种对象(型)的实例(值)允许执行的操作的集

合,包括操作及有关的操作规则。是对系统动态特性的描述。

数据的约束条件数据的约束条件是一组完整性规则的集合。完整性规则是给定的数据

模型中数据及其联系所具有的制约和依存规则,以保证数据的正确、有效、相容。

6. 最常用的数据模型

层次、网状、关系、面向对象模型

7. 关系模型

关系: 一张表

元组: 表中的一行

属性: 表中的一列

主码: 表中的某个属性组,它可以唯一确定一个元组

域: 属性的取值范围

分量: 元组中的一个属性值

关系模式: 对关系的描述。

表示为:关系名(属性1,属性2,…属性n)

8. 关系数据模型优缺点

(1) 建立在严格的数学概念基础之上

(2) 概念单一

(3) 存取路径对用户透明

9. 数据库系统的三级模式结构

内模式、外模式、模式

二级映射

10. 数据库系统的组成:数据库、软件系统、硬件系统、数据库管理员四部分组成。

11.数据描述

概念设计、逻辑设计和物理设计等各阶段中数据描述的术语,概念设计中实体间二元联系的描述(1:1,1:N,M:N)。12.数据模型

数据模型的定义:是专门用来抽象,表示和处理现实世界中的数据和信息的工具。两类数据模型(概念模型和逻辑模型),逻辑模型的形式定义(逻辑模型是按计算机观点对数据建模,主要包括层次模型、网络模型、关系模型、面向对象模型、对象关系模型;物理模型是对数据最底层的抽象,它描述数据在系统内部的表示方式和存取方法。),ER模型,层次模型、网状模型、关系模型和面向对象模型的数据结构以及联系的实现方式。

13.DB的体系结构

三级结构,两级映象,两级数据独立性,体系结构各个层次中记录的联系。

14.DBMS(数据库管理系统)DBMS的工作模式、主要功能和模块组成。

DBMS的工作模式有六点:

接受应用程序的数据请求和处理请求;

将用户的数据请求转换成低层指令;

实现对DB的操作;

从对DB的操作中接受查询结果;

对查询结构进行处理;

将处理结果返回给用户。

DBMS的主要功能有DB的定义、操纵、保护、维护和数据字典等五个功能。

15.DBS(数据库系统)DBS的组成(DBS由DB、硬件、软件和DBA等四个部分组成),DBA(DBA是控制数据整体结构的一组人员,负责DBS的正常运行,承担创建、监控和维护DB结构的责任。),DBS的全局结构(数据库用户有四类:DBA,专业用户,应用程序员,终端用户。DBMS的查询处理器有四个模块:DML编译器,嵌入型DML预编译器,DDL编译器,查询运行核心程序。DBMS的存储管理器有四个模块:授权和完整性管理器,事务管理器,文件管理器,缓冲区管理器。磁盘存储器中有五种数据结构:数据文件,数据字典,索引文件,统计数据组织和日志。),DBS结构的分类。

第二章关系数据库

1. 基本概念

关系,候选码,主码,主属性,非主属性,键

2. 完整性约束

实体完整性、参照完整性、用户定义完整性

3. 笛卡儿积

4. 关系的性质

列是同质的

不同的列可出自同一个域,每一列为一个属性,不同的属性要有不同的属性名

列的顺序无所谓

任意两个元组不能完全相同

行的顺序无所谓

分量必须取原子值,即每一个分量必须是不可分的数据项

5.关系的完整性

实体完整性、参照完整性、用户定义的完整性

6. 关系代数

(1) 并、交、差、广义笛卡儿积

(2) 选择

(3) 投影

(4) 连接:等值连接、自然连接

超键(Super Key):在关系中能惟一标识元组的属性集称为关系模式的超键。

候选键(Candidate Key):不含有多余属性的超键称为候选键。也就是在候选键中,若要再删除属性,就不是键了。

主键:(Primary Key):用户选作元组标识的一个侯选键称为主键。一般,如不加说明,则键是指主键。

外键:(Foreign Key):如果关系R中属性K是其他模式的主键,那么K在模式R中称为外键

例如:学生(学号,姓名,性别,驾驶证号)假定学生不重名

超键:(学号,姓名),(学号,性别),(学

号,姓名,性别),(姓名,性别)等等

候选键:学号,姓名

主键:你在数据库定义的时候,如果选择学号作为

键,那么学号就是候选键

外键:驾驶证号

本章的重要概念

(1)基本概念

关系模型,关键键(主键和外键),关系的定义和性质,三类完整性规则,ER模型到关系模型的转换规则。

(2)关系代数

五个基本操作,四个组合操作,七个扩充操作。

第三章SQL语言

1. SQL的特点

综合统一

高度非过程化

面向集合的操作方式

以同一种语法结构提供两种使用方式

语言简洁,易学易用

2. 表

(1) 创建表create table

create table student

(Sno char(5) not null,

Sname char(20) unique,

Ssex char(1),

Sage int,

Sdept char(15));

(2) create table customer(

customer_name char(20) not null,

customer_street char(30),

customer_city char(30),

primary key(customer_name));

(3) create table account(

account_number char(10) not null,

branch_name char(15),

balance int,

primary key(account_number),

foreign key(branch_name) reference branch(branch_name), check(balance>=0));

(2) 修改表alter table

(3) 删除表drop table

3. 索引

(1) 创建索引create index

(2) 删除drop index

4. 查询select

(1) 格式

(2) 单表查询:选择列、满足条件、排序、分组、集函数

(3) 连接查询

(4) 嵌套查询

IN、比较、(ANY 或ALL)、EXISTS

(5) 集合查询

5. 更新数据INSERT、UPDATE、DELETE

6. 视图(1) 建立视图Create view

(2) 视图的作用

7. 数据控制

(1) 授权Grant

(2) 收回权限Revoke

本章的重要概念

(1)SQL数据库的体系结构,SQL的组成。

(2)SQL的数据定义:SQL模式、基本表和索引的创建和撤销。

(3)SQL的数据查询;SELECT语句的句法,SELECT语句的三种形式及各种限定,基本表的联接操作,SQL中的递归查询。

(4)SQL的数据更新:插入、删除和修改语句。

(5)视图的创建和撤销,对视图更新操作的限制。

(6)嵌入式SQL:预处理方式,使用规定,使用技术,卷游标,动态SQL语句。

第四章关系数据库的规范化设计

1. 函数依赖、部分函数依赖、完全函数依赖、传递依赖

2. 1NF、2NF、3NF、BCNF

模式的分解

关系模式的分解需要遵循两个主要原则:

1.满足无损连接分解的要求。

2.既要满足无损连接分解的要求,又要满足保持函数依赖

无损分解的测试方法

算法4.3 无损分解的测试的算法:如何判断是否是无损分解

构造一张k行n列的表格,每列对应一个属性Aj(1≤j≤n),每行对应一个模式Ri(1≤i ≤k)。如果Aj在R i中,那么在表格的第i行第j列处填上符号aj,否则填上bij。

把表格看成模式R的一个关系,反复检查F中每个FD在表格中是否成立,若不成立,则修改表格中的值。修改方法如下:对于F中一个FD X→Y,如果表格中有两行在X值上相等,在Y值上不相等,那么把这两行在Y值上也改成相等的值。如果Y值中有一个是aj,那么另一个也改成aj;如果没有aj,那么用其中一个bij替换另一个值(尽量把下标ij改成较小的数)。一直到表格不能修改为止。(这个过程称为chase过程)

若修改的最后一张表格中有一行是全a,即a1a2…an,那么称ρ相对于F是无损分解,否则称损失分解。

无损分解的测试方法

第一范式(1NF)

1NF的定义

如果一个关系模式R的所有属性都是不可分的基本数据项,则R∈1NF

即不能以集合、序列等作为属性值。

第一范式是对关系模式的最起码的要求。不满足第一范式的数据库模式不能称为关系数据库但是满足第一范式的关系模式并不一定是一个好的关系模式

第二范式(2NF)

(回顾)定义4.14 对于FD W→A,如果存在X?W有X→A成立,那么称W→A是局部依赖(A局部依赖于W);否则称W→A是完全依赖。完全依赖也称为“左部不可约依赖”。(回顾)定义4.15 如果A是关系模式R的候选键中属性,那么称A是R的主属性;否则称A是R的非主属性。

定义4.16 如果关系模式R是1NF,且每个非主属性完全函数依赖于候选键,那么称R是第二范式(2NF)的模式。如果数据库模式中每个关系模式都是2NF,则称数据库模式为2NF的数据库模式。

第三范式(3NF)

(回顾)定义4.17 如果X→Y,Y→A,且Y→X和A∈Y,那么称X→A是传递依赖(A 传递依赖于X)。

定义4.18 如果关系模式R是1NF,且每个非主属性都不传递依赖于R的候选键,那么称R是第三范式(3NF)的模式。如果数据库模式中每个关系模式都是3NF,则称其为3NF 的数据库模式。

将2NF的关系模式规范化为3NF的关系模式,其方法是消除2NF的关系模式中非键属性对键的传递依赖。

本章重要概念

(1)关系模式的冗余和异常问题。

(2)FD的定义、逻辑蕴涵、闭包、推理规则、与关键码的联系;平凡的FD;属性集的闭包;推理规则的正确性和完备性;FD集的等价。

(3)无损分解的定义、性质、测试;保持依赖集的分解。

(4)关系模式的范式:1NF,2NF,3NF,BCNF。分解成2NF、3NF模式集的算法。

第五章数据库设计

1. 数据库设计的六个阶段

需求分析、概念结构设计、逻辑结构设计物理结构设计、数据库实施、数据库运行和维护2. 需求分析:

数据字典:数据项、数据结构、数据流、数据存储和处理过程

3. 概念结构设计

(1) 是整个数据库设计的关键,它通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型

(2) E-R图:基本表示方法

4. 逻辑结构设计

是将概念结构转换为某个DBMS所支持的数据模型,并对其进行优化

5. 物理设计

(1) 为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)6. 实施阶段

设计人员运用DBMS提供的数据语言及其宿主语言,建立数据库,编制与调试程序,组织数据入库,并进行试运行

7. 运行和维护阶段

◆数据库应用系统经过试运行后即可投入正式运行。

◆重构,重组织

本章重要概念

(1)DBS生存期及其7个阶段的任务和工作,DBD过程的输入和输出。

(2)概念设计的重要性、主要步骤。逻辑设计阶段的主要步骤。

(3)ER模型的基本元素,属性的分类,联系的元数、连通词、基数。采用ER方法的概念设计步骤。

(4)ER模型到关系模型的转换规则。采用ER方法的逻辑设计步骤。

(5)ER模型的扩充:弱实体,超类和子类。

第七章系统实现技术

1. 事务

(1) 概念

(2) 特性:原子性、一致性、隔离性、持续性

2. 故障种类事务

内部的故障、系统故障、介质故障

3. 恢复的实现技术

(1) 数据转储:转储状态、转储方式

(2)日志:基本格式和内容、日志的作用、登记日志文件

并发控制

1. 问题:丢失修改、不可重复读、读“脏”数据

2. 封锁共享锁、排它锁

3. 一级封锁协议

(1) 事务T在修改数据R之前必须先对其加X锁,直到事务结束才释放

(2) 解决的问题:防止丢失修改

4. 二级封锁协议

(1) 一级封锁协议加上事务T在读取数据R前必须先对其加S锁,读完后即可释放S锁

(2) 解决的问题:防止丢失修改、防止读“脏”数据

5. 三级封锁协议

(1)一级封锁协议加上事务T在读取数据R前必须先对其加S锁,直到事务结束才释放。

(2) 解决的问题:防止丢失修改、防止读“脏”数据、防止不可重复读

6.活锁和死锁

(1) 死锁的预防:一次封锁法,顺序封锁法

(2) 死锁的诊断:超时法,等待图法

(3) 死锁的解除:选择一个处理死锁代价最小的事务,将其撤消,释放此事务持有的所有锁,使其它事务得以继续进行下去。

本章重要概念

事务的定义,COMMIT和ROLLBACK的语义,事务的ACID性质

恢复的定义、基本原则和实现方法,故障的类型,检查点技术,REDO和UNDO操作,运行记录优先原则。

并发操作带来的三个问题,X锁、S锁、活锁、饿死和死锁

完整性的定义,完整性子系统的功能,完整性规则的组成。SQL中的三大类完整性约束,SQL3中的触发器技术。

安全性的定义、级别,权限,SQL中的安全性机制,几种常用的安全性措施,自然环境的安全性。

excel期末知识点总结

1.文件的建立与打开: office图表新建新工作簿确定 打开 2.文件的保存与加密保存: office图表保存 xls 准备加密文档输入密码确定再次输入并确定 3.强制换行:alt+enter 4.删除与清除:删除整个单元格,清除格式、内容、批注 5.填充序列: 等差等比: 在单元格中输入起始值开始填充序列选择等差等比、行列输入步长值、终止值 文字序列: 在单元格输入文字序列 office按钮 excel选项常用编辑自定义序列选中刚才输入的文字序列导入确定6.复制移动: 移动覆盖左键拖拽 复制移动覆盖 ctrl+左键拖拽 移动插入 shift+左键拖拽 复制移动插入 ctrl+shift+左键拖拽 7.插入行列:选中要插入数量的行或列右键插入 8.为行、列、单元格命名: 先选中要命名的区域在左上角的名称框内输入名字 直观,快速选定 如何删除名称:公式名称管理器选中删除 9.批注:单击单元格审阅新建批注 10.科学计数法: >=12位用科计表示 123456789012=1.234567E+11 1.A3=R3C1 R为行C为列 C1 C2 C3 R1 R2 R3A3 2.数组运算Ctrl+Shift+Enter 3.将某一函数,作为另一函数的参数调用。最多可以嵌套七层 COUNT(参数1,参数2,…)功能:求一系列数据中数值型数据的个数。 COUNTA(参数1,参数2,…)功能:求“非空”单元格的个数。 COUNTBLANK(参数1,参数2,…)功能:求“空”单元格的个数。 COUNTIF功能:求符合条件的单元格数 4.四舍五入函数ROUND(number, num_digits) =ROUND(1234.567,2)=1234.57 =ROUND(1234.567,1)=1234.6 =ROUND(1234.567,0)=1235 =ROUND(1234.567,-1)=1230 =ROUND(1234.567,-2)=1200 负的往左,正的往右

学习数据库的心得

学习数据库的心得 篇一:SQL 学习心得 SQL 数据库学习心得 经过一个学期的数据库课程的学习,我基本上掌握了创建数据库以及对数据库的操作的基础知识。学 习了 SQL 数据库中的增、删、改、查等功能,数据库这门课涉及到以前的知识不多,是一门从头学起的课 程,即使基础不是很好,只要认真听讲、复习功课,还是一门比较容易掌握的课。 正是由于这门课和以前关系不大,很多知识也从未接触过,因此对于这门课的学习方法就是:理论课 上认真听老师讲理论知识,上机课上仔细看老师的演示过程、在电脑上按照老师的演示步骤自己做,遇到 自己无法做出来的过程(步骤)请教老师或者同学。 在第一章基础篇里:开篇任务一是对通讯录程序的主要功能做一个简单的介绍,并根据这些功能使用 SQL Server2005 设计了对应的数据库 AddressList 及数据表,并建立数据表之间的关系;了解了通讯录程序数 据库 AddressList 包含的三个表以及表的相关属性。由于我在本学期初参加数学建模竞赛,耽误了几节课程, 导致任务一的内容不会做。而 C#数据库中的内容一环扣一环,后面的任务往往是在前面的任务基础上做的, 所以一步跟不上,步步跟不上。在老师讲后面的任务时而我前面的任务既不太会做,又没有做完,导致在 学习上很吃力。之后的任务都是在任务一的基础上的延伸,学习数据库的编写、功能等。在学习数据库和 数据表创建和修改时,了解到表是建立关系数据库的基本结构,用来存储数据具有已定义的属性,在表的 操作过程中,有查看表信息、查看表属性、修改表中的数据、删除表中 的数据及修改表和删除表的操作。从课程中中让我更明白一些知识,表是数据最重要的一个数据对象, 表的创建好坏直接关系到数数据库的成败,表的内容是越具体越好,但是也不能太繁琐,以后在实际应用 中多使用表,对表的规划和理解就会越深刻。我们上机的另一个内容是数据库的约束、视图、查询。 通过对数据库的学习,我也明白了很多行业都离不开数据库,就算是一个小型的超市也离不开它。可 见数据库这门课的在生活中的广泛性与实用性,如果能够认真学好它将来必有成就。由于我在毕业后并没 有打算从事这方面的工作,所以在学习的时候只是学习,上课把老师布置的作业温习以下。第一次接触数 据库,第一次接触 SQL 语言,虽然陌生,但是可以让我从头开始学,就算没有基础的人也可以学得很好。 刚开始练习 SQL 语言的时候,并不是很难。虽然我前面拉下几节课,但在同学的帮助上基本上都能做出来, 虽然不能做到举一反三,可还是很有成就感。 对于数据库的学习是一个循循渐进的过程,在这之中存在很多的细节,稍有不慎自己做出的程序就会 出错,调试时显示各类错误,比如:没有 using 命令、标点符号的错误。尤其是汉语下的标点符号和英文符 号,有时看着很像,但在 C#数据库应用程序中就是对与错的区别。在任务二中做的是用户登录,要建立连 接数据库。在这中间需要添加 SQL 语句以实现数据库的连接,打开、关闭数据库;当然在这中间可能会出 现一些异常:比如访问数据库的过程中,可能会出现数据库服务没有开启、连接中断等异常情况。为了使 应用程序能够处理 这些突发情况,需要进行异常处理,加入一些数据库中的一些处理语句。在之后的用户登录模块中需 要设计用户登录界面中控件的属性、名称等,之后在“登录”、“取消”按钮上添加事件代码,在这中可以对用 户名和密码进行更改,待这一切做完后进行调试以实现任务二的任务。

数据库原理与应用知识总结

关系范式: 1.设有关系模式:学生修课管理(学号,姓名,所在系,性别,课程号,课程名,学分,成绩)。 设一名学生可以选修多门课程号,一门课程号可以被多名学生选修;一名学生有唯一的所在系,每门课程号有唯-的课程名和学分。 回答以下问题: (1)根据上述规定写出关系模式R的基本函数依赖; (2)找出关系模式R的候选码; (3)试问关系模式R最高已经达到第几范式?为什么? (4)将R分解成3NF模式集。 答: (1)学号> (姓名,所在系,性别) F 课程号> (课程名,学分) F (学号,课程号) >成绩F (学号,课程号) > (姓名,所在系,性别) P (2)候选码:学号,课程号 (3)存在部分函数依赖,R达到第一范式 (4) Student (学号,姓名,所在系,性别) sc (学号,课程号,成绩) Course (课程号,课程名,学分) 2.t-sql语句: (1)删除数据库drop database

(2)修改数据库alter database (3)使用SOL语句创建读者信息表,并设置读书编号的主键,读者姓名取值唯一。 Create table 读者信息表 (读者编号varchar(13)primary key, 读者姓名varchar(10)unique, 性别varchar(2)not null , 年龄int , 证件号码varchar (30)not null ); (4)使用SOL语句创建图书信息表、图书馆借阅表。 Create table 图书信息表 (图书编号varchar(13)primary key, 图书名称varchar(40)not null, 作者varchar(21)not null, 译者varchar(30), 出版社varchar(50)not null, 出版日期date not null, 图书价格money not null); Create table 图书借阅信息表 (图书编号varchar(13), 读书编号varchar(13),

空间数据库重点知识

矢量数据结构:通过记录坐标的方式来表达点、线、面等地理实体。 矢量数据结构的主要特点:定位明显和属性隐含。 结构:Spaghetti(面条)结构和拓扑矢量数据结构。 只有像拓扑结构这样的数据结构才是“矢量”数据结构。 拓扑矢量数据结构的特点是:1、一个多边形和另一个多边形之间没有空间 坐标的重复,这样就消除了重复线;2、拓扑信息与空间坐标分别存储,有利于进行近邻、包含和相连等查询操作;3、拓扑表必须在一开始就创建,这要花费一定的时间和空间;4、一些简单的操作比如图形显示比较慢,因为图形显示需要的是空间坐标而非拓扑结构。 栅格数据模型是将连续的空间离散化,将地理区域的平面表象按一定分解力作行和列的规则划分,形成大小均匀紧密相邻的网格阵列。 空间数据引擎(SDE):是用来解决如何在关系数据库中存储空间的数据,实现真正的数据库方式管理空间数据,建立空间数据服务器的方法。 工作原理:SDE客户端发出请求,由SDE服务端处理这个请求,转换成DBMS 能处理的请求事物,由DBMS处理完相应的请求,SDE服务端再将处理的结果实时反馈给GIS的客户端。客户通过空间数据引擎将自己的数据交给大型关系型DBMS,由DBMS统一管理,同样,客户可以通过空间数据引擎从关系型DBMS 中获取其它类型的GIS数据,并转换成客户端可以使用的方式。 空间数据引擎的作用: (1)与空间数据库联合,为任何支持的用户提供空间数据服务。 (2)提供开放的数据访问,通过TCP/IP横跨任何同构或异构网格,支持分布式的GIS系统。 (3)SDE对外提供了空间几个对象模型,用户可以在此模型基础之上建立空间几何对象,并对这些几何对象进行操作。 (4)快速的数据提取和分析。 (5)SDE提供了连续DBMS数据库的接口,其他的一切涉及与DBMS数据库进行交互的操作都是在此基础之上完成的。 (6)与空间数据库联合可以管理海量空间信息。 (7)无缝的数据管理,实现空间数据与属性数据统一存储。 (8)并发访问。 空间数据是对空间事物的描述,实质上就是指以地球表面空间位置为参照,用来 描述空间实体的位置、形状、大小及其分布特征诸多方面的数据。 数据库是长期储存在计算机内的、有组织的、可共享的数据集合。 空间数据特征:时空特征、多维特征、多尺度性、海量数据特征。

数据库总结

1.数据库特点:较小的冗余度。较高的数据独立性、易扩展性。可为各种用户共享 数据库是数据集合 2.DBMS功能:数据定义功能。数据组织、存储和管理(文件结构和存取方式)。数据操纵功能(增删查改) 3.高级数据库系统:分布式数据库系统,面向对象数据库系统 4.数据模型的组成部分包括:数据结构,数据操作,数据约束条件。 5.数据更新:数据添加,数据修改,数据删除。 6.数据模型(网状、层次、关系模型):按计算机系统的观点建模,主要用于DBMS的实现,不包括E-R 关系模型中由三种完整性约束:实体完整性,参照完整性,用户自定义完整性。 7.【 8.关系:(Relation)一个关系通常是一张表。 9.分量:某一元组的一个属性值,为最小单位,不可分。 10.存储结构:在DB物理组织之中,表以文件形式储存 11.数据库系统结构: 从DBMS角度:外模式(External Schema),模式(Schema),内模式(Internal Schema)。 从最终用户角度:集中式结构。分布式结构。客户/服务器结构。并行结构 12. 13.模式/内模式映象是唯一的,同一个模式可以有任意多个外模式; ) 三级模式与二级映像优点:(1)保证数据的独立性(2)简化用户接口(3)有利于数据共享 (4)有利于数据保密 14.关系模型的组成:关系数据结构。关系操作集合。关系完整性约束 SQL Server基于关系模型的数据库系统。 15.主码:若一个关系有多个候选码,则选定其中的一个为主码

15:数据类型: decimal(不包含小数点多少位,小数点后几位) nvarchar采用Unicode编码,无论是中文英文占一个字节 、 有n表示Unicode编码,每个字符占一个字节,没有n表示非Unicode编码, 英文或者数字占一个字节,中文占两个字节。 有中文用nvarchar,没有中文用varchar. 16:按照功能分类: DDL:(Database design language)数据定义语言,用于进行各种数据库对象的创建主要操作包括create,alter,drop DML:(Database management language)数据管理语言,用于对标的数据添加,修改,删除,查询,主键操作包括,insert,update,delete,select ~ DCL:(Database control language)数据控制语言,用于进行权限分配等 ] 1:创建数据库 create database TaoHao on primary ( name='TaoHao', filename='E:\Microsoft SQL Server\DATA\', size=10mb, " maxsize=200mb, filegrowth=10mb ) log on ( name='TaoHao_log', filename='E:\Microsoft SQL Server\DATA\', size=5mb, : filegrowth=10mb ) 相关子查询:not exists;子查询需要父查询的结果才能执行

数据库原理(王珊)知识点整理

目录 1.1.1四个基本概念1 数据(Data)1 数据库(Database,简称DB)1 长期储存在计算机内、有组织的、可共享的大量数据的集合、1 基本特征1 数据库管理系统(DBMS)1 数据定义功能1 数据组织、存储和管理1 数据操纵功能1 数据库的事务管理和运行管理1 数据库的建立和维护功能(实用程序)1 其它功能1 数据库系统(DBS)2 1.1.2 数据管理技术的产生和发展2 数据管理2 数据管理技术的发展过程2 人工管理特点2 文件系统特点2 1.1.3 数据库系统的特点3 数据结构化3 整体结构化3 数据库中实现的是数据的真正结构化3 数据的共享性高,冗余度低,易扩充、数据独立性高3 数据独立性高3

物理独立性3 逻辑独立性3 数据独立性是由DBMS的二级映像功能来保证的3 数据由DBMS统一管理和控制3 1.2.1 两大类数据模型:概念模型、逻辑模型和物理模型4 1.2.2 数据模型的组成要素:数据结构、数据操作、数据的完整性约束条件4 数据的完整性约束条件:4 1.2.7 关系模型4 关系数据模型的优缺点5 1.3.1 数据库系统模式的概念5 型(Type):对某一类数据的结构和属性的说明5 值(Value):是型的一个具体赋值5 模式(Schema)5 实例(Instance)5 1.3.2 数据库系统的三级模式结构5 外模式[External Schema](也称子模式或用户模式),5 模式[Schema](也称逻辑模式)5 内模式[Internal Schema](也称存储模式)5 1.3.3 数据库的二级映像功能与数据独立性6 外模式/模式映像:保证数据的逻辑独立性6 模式/内模式映象:保证数据的物理独立性6 1.4 数据库系统的组成6 数据库管理员(DBA)职责:6 2.1.1 关系6 域(Domain):是一组具有相同数据类型的值的集合6

java期末考试知识点总结

java知识点总结 应同学要求,特意写了一个知识点总结,因比较匆忙,可能归纳不是很准确,重点是面向对象的部分。 java有三个版本:JAVA SE 标准版\JAVA ME移动版\JAVA EE企业版 java常用命令:java, javac, appletview java程序文件名:.java, .class java的两类程序:applet, application; 特点,区别,这两类程序如何运行 java的主方法,主类,共有类;其特征 java的数据类型,注意与C++的不同,如字符型,引用型,初值 java与C++的不同之处,期中已总结 java标记符的命名规则 1)标识符有大小写字母、下划线、数字和$符号组成。 2)开头可以是大小写字母,下划线,和$符号(不能用数字开头) 3)标识符长度没有限制 4)标识符不能使关键字和保留字 面向对象的四大特征 抽象、封装、继承、多态 封装,类、对象,类与对象的关系,创建对象,对象实例变量 构造函数,默认构造函数,派生类的构造函数,构造函数的作用,初始化的顺序,构造方法的重载 构造函数:创建对象的同时将调用这个对象的构造函数完成对象的初始化工作。把若干个赋初值语句组合成一个方法在创建对象时一次性同时执行,这个方法就是构造函数。是与类同名的方法,创建对象的语句用new算符开辟了新建对象的内存空间之后,将调用构造函数初始化这个新建对象。 构造函数是类的特殊方法: 构造函数的方法名与类名相同。 构造函数没有返回类型。 构造函数的主要作用是完成对类对象的初始化工作。 构造函数一般不能由编程人员显式地直接调用。 在创建一个类的新对象的同时,系统会自动调用该类的构造函数为新对象初始化。 类的修饰符:public类VS 默认; abstract类; final类; 1)类的访问控制符只有一个:public,即公共的。公共类表明它可以被所有其他类访问和引用。 若一个类没有访问控制符,说明它有默认访问控制特性,规定该类智能被同一个包中的类访问引用(包访问控制)。 2)abstract类:用abstract修饰符修饰的类被称为抽象类,抽象类是没有具体对象的概念类,抽象类是它所有子类的公共属性集合,用抽象类可以充分利用这些公共属性来提高开发和维护效率。 3)final类:被final修饰符修饰限定的,说明这个类不能再有子类。所以abstract与final 不能同时修饰一个类。 域和方法的定义 1)域:定义一个类时,需要定义一组称之为“域”或“属性”的变量,保存类或对象的数据。

《数据库原理》知识点总结

《数据库原理》知识点总结标准化文件发布号:(9312-EUATWW-MWUB-WUNN-INNUL-DQQTY-

目录未找到目录项。 一数据库基础知识(第1、2章) 一、有关概念 1.数据 2.数据库(DB) 3.数据库管理系统(DBMS) Access 桌面DBMS VFP SQL Server Oracle 客户机/服务器型DBMS MySQL DB2 4.数据库系统(DBS) 数据库(DB) 数据库管理系统(DBMS) 开发工具 应用系统 二、数据管理技术的发展 1.数据管理的三个阶段 概念模型 一、模型的三个世界 1.现实世界

2.信息世界:即根据需求分析画概念模型(即E-R图),E-R图与DBMS 无关。 3.机器世界:将E-R图转换为某一种数据模型,数据模型与DBMS相关。 注意:信息世界又称概念模型,机器世界又称数据模型 二、实体及属性 1.实体:客观存在并可相互区别的事物。 2.属性: 3.关键词(码、key):能唯一标识每个实体又不含多余属性的属性组合。 一个表的码可以有多个,但主码只能有一个。 例:借书表(学号,姓名,书号,书名,作者,定价,借期,还期) 规定:学生一次可以借多本书,同一种书只能借一本,但可以多次续借。 4.实体型:即二维表的结构 例 student(no,name,sex,age,dept) 5.实体集:即整个二维表 三、实体间的联系: 1.两实体集间实体之间的联系 1:1联系 1:n联系 m:n联系 2.同一实体集内实体之间的联系 1:1联系 1:n联系 m:n联系 四、概念模型(常用E-R图表示) 属性: 联系: 说明:① E-R图作为用户与开发人员的中间语言。 ② E-R图可以等价转换为层次、网状、关系模型。 举例: 学校有若干个系,每个系有若干班级和教研室,每个教研室有若干教员,其中有的教授 和副教授每人各带若干研究生。每个班有若干学生,每个学生选修若干课程,每门课程有若干学生选修。用E-R图画出概念模型。

数据库原理知识总结和期末试卷

数据库知识要点归纳 第1章数据库基础知识 1.数据库(DB)是一个按数据结构来存储和管理数据的计算机软件系统。 数据库是长期储存在计算机内的、有组织的、可共享的数据集合。 数据库管理数据两个特征:1.数据整体性 2.数据库中的数据具有数据共享性 2.数据库管理系统(DBMS)是专门用于管理数据库的计算机系统软件 3.数据库应用系统是在数据库管理系统(DBMS)支持下建立的计算机应用系统,简写为DBAS。数据库应用系统是由数据库系统、应用程序系统、用户组成的。 例如,以数据库为基础的财务管理系统、人事管理系统、图书管理系统,成绩查询系统等等。 4.数据库系统DBS是一个实际可运行的存储、维护和应用系统提供数据的软件系统,是存储介质、处理对象和管理系统的集合体。它通常由软件、数据库和数据管理员组成。 5.数据库中数据独立性数据和程序之间的依赖程度低,独立程度大的特性称为数据独立性高。1、数据的物理独立性数据的物理独立性是指应用程序对数据存储结构的依赖程度。2、数据的逻辑独立性数据的逻辑独立性是指应用程序对数据全局逻辑结构的依赖程度。 6.数据库的三级模式是模式、外模式、内模式。1.模式(Schema)一个数据库只有一个模式 2.外模式(External Schema)一个数据库有多个外模式。3.内模式(Internal Schema)一个数据库只有一个内模式。 7.数据库系统的二级映象技术 第2章数据模型与概念模型 1.实体联系的类型:一对一联系(1:1)一对多联系(1:n)多对多联系(m:n) 2.E-R图描述现实世界的概念模型,提供了表示实体集、属性和联系的方法。 长方形表示实体集椭圆形表示实体集的属性菱形表示实体集间的联系 3.数据模型的三要素数据结构、数据操作、数据约束条件 数据结构分为:层状结构、网状结构和关系结构 常见的数据模型:层次模型、网状模型和关系模型。 层次模型用树形结构来表示各类实体以及实体间的联系

(整理)SQLServer数据库基本知识点.

SQL Server 数据库基本知识点一、数据类型

二、常用语句 (用到的数据库Northwind) 查询语句 简单的Transact-SQL查询只包括选择列表、FROM子句和WHERE子句。它们分别说明所查询列、查询的 表或视图、以及搜索条件等。例如,下面的语句查询Customers 表中公司名称为“Alfreds Futterkiste”的ContactName字段和Address字段。 SELECT ContactName, Address FROM Customers WHERE CompanyName='Alfreds Futterkiste' (一) 选择列表 选择列表(select_list)指出所查询列,它可以是一组列名列表、星号、表达式、变量(包括局部变量和全局变量)等构成。 1、选择所有列 例如,下面语句显示Customers表中所有列的数据: SELECT * FROM Customers 2、选择部分列并指定它们的显示次序查询结果集合中数据的排列顺序与选择列表中所指定的列名排列顺序相同。 例如: SELECT ContactName, Address FROM Customers 3、更改列标题 在选择列表中,可重新指定列标题。定义格式为: 列标题 as 列名 列名列标题如果指定的列标题不是标准的标识符格式时,应使用引号定界符,例如,下列语句使用汉字显示列标题: SELECT ContactName as 联系人名称, Address as地址 FROM Customers 4、删除重复行

SELECT语句中使用ALL或DISTINCT选项来显示表中符合条件的所有行或删除其中重复的数据行,默认 为ALL。使用DISTINCT选项时,对于所有重复的数据行在SELECT返回的结果集合中只保留一行。 SELECT DISTINCT(Country) FROM Customers 5、限制返回的行数 使用TOP n [PERCENT]选项限制返回的数据行数,TOP n说明返回n行,而TOP n PERCENT 时,说明n是 表示一百分数,指定返回的行数等于总行数的百分之几。 例如: SELECT TOP 2 * FROM Customers SELECT TOP 20 PERCENT * FROM Customers (二)FROM子句 FROM子句指定SELECT语句查询及与查询相关的表或视图。在FROM子句中最多可指定256个表或视图,它们之间用逗号分隔。在FROM子句同时指定多个表或视图时,如果选择列表中存在同名列,这时应使用对象名限定这些列 所属的表或视图。例如在Orders和Customers表中同时存在CustomerID列,在查询两个表中的CustomerID时应 使用下面语句格式加以限定: select * from Orders,Customers where Orders.CustomerID =Customers.CustomerID 在FROM子句中可用以下两种格式为表或视图指定别名: 表名 as 别名 表名别名 select * from Orders as a,Customers as b where a.CustomerID =b.CustomerID SELECT不仅能从表或视图中检索数据,它还能够从其它查询语句所返回的结果集合中查询数据。 例如: select * from Customers where CustomerID in (select CustomerID from Orders where EmployeeID=4) 此例中,将SELECT返回的结果集合给予一别名CustomerID,然后再从中检索数据。 (三) 使用WHERE子句设置查询条件 WHERE子句设置查询条件,过滤掉不需要的数据行。例如下面语句查询年龄大于20的数据:select CustomerID from Orders where EmployeeID=4

高一期末知识点总结

高一期末知识点总结 第一篇:宇宙与地球 专题1 地球在宇宙中的位置 A 1、天体的概念 2、最基本的天体共同的特征 3、主要天体的特征(恒星、星云、行星、卫星、彗星、流星体) 4、天体系统的层次 5、太阳系的中心天体 6、河外星云的成员 7、宇宙年 8、太阳系八大行星按距离太阳远近的名称 9、八大行星的共同特点 10、距离地球最近的恒星 11、太阳辐射的形式 12、太阳结构(外层、内层) 13、太阳大气的主要特征 14、各层主要的太阳活动的标志 15、太阳活动的主要标志 16、太阳活动的周期 17、太阳对地球的影响

18、八大行星的分类 19、地球成为有生命存有的天体的条件 专题2 地球的伙伴——月球B 20、月球的环境特点 21、月球的地形特点 22、月球公转周期、自转周期、方向 23、地球的天然卫星 24、熟悉月相的名称、各月相的出现的农历时间 25、月相循环一个周期的时间、名称 26、日食、月食出现的原因 27、日食、月食时,月球、地球、太阳的三者位置 28、日食、月食出现时的月相情况 29、潮、汐的概念 30、潮、汐出现的原因(不必展开阐述) 31、理解潮汐随月球而不是太阳的出没而出现潮起潮落的现象的原因 32、连续两次涨潮的时间间隔 33、大潮、小潮出现的月相农历时间 34、潮汐与人类的关系 专题3 人类对太空的探索A 35、太空探索的意义、太空探索的历程 专题4 地球的运动C

36、地球自转的方向、周期、一个周期所需的时间、速度 37、地轴北端的指向 38、恒星日与太阳日的区别(时间、参照物、成因) 39、南、北两极上空所观察到的地球自转的方向 40、什么是地方时、区时、北京时间 41、时区划分的方法 42、国际日期变更线两侧日期的变化 43、地球表面作水平运动的物体发生偏向的的规律(南、北半球、赤道的区别) 44、地球公转的方向、周期、速度 45、黄赤交角的度数 46、太阳直射点在赤道、北回归线、南回归线上的日期、节气 47、正午太阳高度角在纬度和季节上变化的规律 48、晨昏线的区分 49、昼夜长短在纬度和季节上变化的规律极昼、极夜现象 50、天文角度、传统上、气候上四季的划分 第二篇岩石与地貌 专题5 板块运动B 1、用于解释地壳运动的三大学说的名称 2、六大板块的名称 3、板块构造学说的主要观点

数据库原理(王珊)知识点整理

目录 1.1.1四个基本概念 (1) 数据(Data) (1) 数据库(Database,简称DB) (1) 长期储存在计算机内、有组织的、可共享的大量数据的集合、 (1) 基本特征 (1) 数据库管理系统(DBMS) (1) 数据定义功能 (1) 数据组织、存储和管理 (1) 数据操纵功能 (1) 数据库的事务管理和运行管理 (1) 数据库的建立和维护功能(实用程序) (1) 其它功能 (1) 数据库系统(DBS) (1) 1.1.2 数据管理技术的产生和发展 (1) 数据管理 (1) 数据管理技术的发展过程 (1) 人工管理特点 (1) 文件系统特点 (1) 1.1.3 数据库系统的特点 (2) 数据结构化 (2) 整体结构化 (2) 数据库中实现的是数据的真正结构化 (2) 数据的共享性高,冗余度低,易扩充、数据独立性高 (2) 数据独立性高 (2) 物理独立性 (2) 逻辑独立性 (2) 数据独立性是由DBMS的二级映像功能来保证的 (2) 数据由DBMS统一管理和控制 (2) 1.2.1 两大类数据模型:概念模型、逻辑模型和物理模型 (2) 1.2.2 数据模型的组成要素:数据结构、数据操作、数据的完整性约束条件 (3) 数据的完整性约束条件: (3) 1.2.7 关系模型 (3) 关系数据模型的优缺点 (3) 1.3.1 数据库系统模式的概念 (3) 型(Type):对某一类数据的结构和属性的说明 (3) 值(Value):是型的一个具体赋值 (3) 模式(Schema) (3) 实例(Instance) (3) 1.3.2 数据库系统的三级模式结构 (3) 外模式[External Schema](也称子模式或用户模式), (3) 模式[Schema](也称逻辑模式) (3) 内模式[Internal Schema](也称存储模式) (3) 1.3.3 数据库的二级映像功能与数据独立性 (3)

信息技术基础知识点汇总

第一章 信息与信息技术知识点 【知识梳理】 二、信息的基本特征 1.传递性;2.共享性;3.依附性和可处理性;4.价值相对性;5.时效性;6.真伪性。 [自学探究] 1.什么是信息技术 ● 信息技术是指有关信息的收集、识别、提取、变换、存储、处理、检索、检测、分析和利用等的 技术。 ● 信息技术是指利用电子计算机和现代通讯手段获取、传递、存储、处理、显示信息和分配信息的 技术。 ● 我国有些专家学者认为,信息技术是指研究信息如何产生、获取、传输、变换、识别和应用的科 学技术。 2 3 4.信息技术的发展趋势 1.多元化;2.网络化;3.多媒体化;4.智能化;5.虚拟化 5.信息技术的影响 (1)信息技术产生的积极影响。 ①对社会发展的影响;②对科技进步的影响;③对人们生活与学习的影响。 (2)信息技术可能带来的一些消极影响。 ①信息泛滥;②信息污染;③信息犯罪;④对身心健康带来的不良影响 6.迎接信息社会的挑战 (1)培养良好的信息意识;(2)积极主动地学习和使用现代信息技术,提高信息处理能力;(3)养成健康使用信息技术的习惯;(4)遵守信息法规。 知识补充: 计算机系统的组成:(由硬件和软件组成) 硬件组成: 运算器 控制器 存储器ROM 、RAM 、软盘、 硬盘、光盘 输入设备键盘、鼠标、扫描仪、手写笔、触摸屏 CPU (中央处理器)

输出设备显示器、打印机、绘图仪、音箱 软件系统: 第二章信息获取知识点 【知识梳理】 1.获取信息的基本过程(P18) 2.信息来源示例(P20):亲自探究事物本身、与他人交流、检索媒体 3.采集信息的方法(P20):亲自探究事物本身、与他人交流、检索媒体 4.采集信息的工具(P20):扫描仪、照相机、摄像机、录音设备、计算机 文字.txt Windows系统自带 .doc 使用WORD创建的格式化文本,用于一般的图文排版 .html 用超文本标记语言编写生成的文件格式,用于网页制作 .pdf 便携式文档格式,由ADOBE公司开发用于电子文档、出版等方面 图形图象.jpg 静态图象压缩的国际标准(JPEG) .gif 支持透明背景图象,文件很小,主要应用在网络上.bmp 文件几乎不压缩,占用空间大 动画.gif 主要用于网络 .swf FLASH制作的动画,缩放不失真、文件体积小,广泛应用于网络 音频.wav 该格式记录声音的波形,质量非常高 .mp3 音频压缩的国际标准,声音失真小、文件小,网络下载歌曲多采用此格式 .midi 数字音乐/电子合成乐器的统一国际标准 视频.avi 用来保存电影、电视等各种影象信息.mpg 运动图象压缩算法的国际标准 .mov 用于保存音频和视频信息 .rm 一种流式音频、视频文件格式 6.常用下载工具(P29):网际快车(flashget)、web迅雷、网络蚂蚁、cuteftp、影音传送带等。 7.网络信息检索的方法(P25 表2-7):直接访问网页、使用搜索引擎、查询在线数据库 8.目录类搜索引擎和全文搜索引擎的区别(P26): 确定信息需求确定信息来源采集信息保存信息

大学数据结构期末知识点重点总结

第一章概论 1.数据结构描述的是按照一定逻辑关系组织起来的待处理数据元素的表示及相关操作,涉及数据的逻辑结构、存储结构和运算 2.数据的逻辑结构是从具体问题抽象出来的数学模型,反映了事物的组成结构及事物之间的逻辑关系 可以用一组数据(结点集合K)以及这些数据之间的一组二元关系(关系集合R)来表示:(K, R) 结点集K是由有限个结点组成的集合,每一个结点代表一个数据或一组有明确结构的数据 关系集R是定义在集合K上的一组关系,其中每个关系r(r∈R)都是K×K上的二元关系 3.数据类型 a.基本数据类型 整数类型(integer)、实数类型(real)、布尔类型(boolean)、字符类型(char)、指针类型(pointer)b.复合数据类型 复合类型是由基本数据类型组合而成的数据类型;复合数据类型本身,又可参与定义结构更为复杂的结点类型 4.数据结构的分类:线性结构(一对一)、树型结构(一对多)、图结构(多对多) 5.四种基本存储映射方法:顺序、链接、索引、散列 6.算法的特性:通用性、有效性、确定性、有穷性 7.算法分析:目的是从解决同一个问题的不同算法中选择比较适合的一种,或者对原始算法进行改造、加工、使其优化 8.渐进算法分析 a.大Ο分析法:上限,表明最坏情况 b.Ω分析法:下限,表明最好情况 c.Θ分析法:当上限和下限相同时,表明平均情况 第二章线性表 1.线性结构的基本特征 a.集合中必存在唯一的一个“第一元素” b.集合中必存在唯一的一个“最后元素” c.除最后元素之外,均有唯一的后继 d.除第一元素之外,均有唯一的前驱 2.线性结构的基本特点:均匀性、有序性 3.顺序表 a.主要特性:元素的类型相同;元素顺序地存储在连续存储空间中,每一个元素唯一的索引值;使用常数作为向量长度 b. 线性表中任意元素的存储位置:Loc(ki) = Loc(k0) + i * L(设每个元素需占用L个存储单元) c. 线性表的优缺点: 优点:逻辑结构与存储结构一致;属于随机存取方式,即查找每个元素所花时间基本一样 缺点:空间难以扩充 d.检索:ASL=【Ο(1)】 e.插入:插入前检查是否满了,插入时插入处后的表需要复制【Ο(n)】 f.删除:删除前检查是否是空的,删除时直接覆盖就行了【Ο(n)】 4.链表 4.1单链表 a.特点:逻辑顺序与物理顺序有可能不一致;属于顺序存取的存储结构,即存取每个数据元素所花费的时间不相等 b.带头结点的怎么判定空表:head和tail指向单链表的头结点 c.链表的插入(q->next=p->next; p->next=q;)【Ο(n)】 d.链表的删除(q=p->next; p->next = q->next; delete q;)【Ο(n)】 e.不足:next仅指向后继,不能有效找到前驱 4.2双链表 a.增加前驱指针,弥补单链表的不足 b.带头结点的怎么判定空表:head和tail指向单链表的头结点 c.插入:(q->next = p->next; q->prev = p; p->next = q; q->next->prev = q;) d.删除:(p->prev->next = p->next; p->next->prev = p->prev; p->prev = p->next = NULL; delete p;) 4.3顺序表和链表的比较 4.3.1主要优点 a.顺序表的主要优点 没用使用指针,不用花费附加开销;线性表元素的读访问非常简洁便利 b.链表的主要优点 无需事先了解线性表的长度;允许线性表的长度有很大变化;能够适应经常插入删除内部元素的情况 4.3.2应用场合的选择 a.不宜使用顺序表的场合 经常插入删除时,不宜使用顺序表;线性表的最大长度也是一个重要因素 b.不宜使用链表的场合 当不经常插入删除时,不应选择链表;当指针的存储开销与整个结点内容所占空间相比其比例较大时,应该慎重选择 第三章栈与队列 1.栈 a.栈是一种限定仅在一端进行插入和删除操作的线性表;其特点后进先出;插入:入栈(压栈);删除:出栈(退栈);插入、删除一端被称为栈顶(浮动),另一端称为栈底(固定);实现分为顺序栈和链式栈两种 b.应用: 1)数制转换 while (N) { N%8入栈; N=N/8;} while (栈非空){ 出栈; 输出;} 2)括号匹配检验 不匹配情况:各类括号数量不同;嵌套关系不正确 算法: 逐一处理表达式中的每个字符ch: ch=非括号:不做任何处理 ch=左括号:入栈 ch=右括号:if (栈空) return false else { 出栈,检查匹配情况, if (不匹配) return false } 如果结束后,栈非空,返回false 3)表达式求值 3.1中缀表达式: 计算规则:先括号内,再括号外;同层按照优先级,即先乘*、除/,后加+、减-;相同优先级依据结合律,左结合律即为先左后右 3.2后缀表达式: <表达式> ::= <项><项> + | <项><项>-|<项> <项> ::= <因子><因子> * |<因子><因子>/|<因子> <因子> ::= <常数> ?<常数> ::= <数字>|<数字><常数> <数字> ∷= 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 3.3中缀表达式转换为后缀表达式 InfixExp为中缀表达式,PostfixExp为后缀表 达式 初始化操作数栈OP,运算符栈OPND; OPND.push('#'); 读取InfixExp表达式的一项 操作数:直接输出到PostfixExp中; 操作符: 当‘(’:入OPND; 当‘)’:OPND此时若空,则出错;OPND若 非空,栈中元素依次弹出,输入PostfixExpz 中,直到遇到‘(’为止;若为‘(’,弹出即 可 当‘四则运算符’:循环(当栈非空且栈顶不是 ‘(’&& 当前运算符优先级>栈顶运算符优先 级),反复弹出栈顶运算符并输入到 PostfixExp中,再将当前运算符压入栈 3.4后缀表达式求值 初始化操作数栈OP; while (表达式没有处理完) { item = 读取表达式一项; 操作数:入栈OP; 运算符:退出两个操作数, 计算,并将结果入栈} c.递归使用的场合:定义是递归的;数据结构是 递归的;解决问题的方法是递归的 2.队列 a.若线性表的插入操作在一端进行,删除操作 在另一端进行,则称此线性表为队列 b.循环队列判断队满对空: 队空:front==rear;队满: (rear+1)%n==front 第五章二叉树 1.概念 a. 一个结点的子树的个数称为度数 b.二叉树的高度定义为二叉树中层数最大的叶 结点的层数加1 c.二叉树的深度定义为二叉树中层数最大的叶 结点的层数 d.如果一棵二叉树的任何结点,或者是树叶, 或者恰有两棵非空子树,则此二叉树称作满二 叉树 e.如果一颗二叉树最多只有最下面的两层结点 度数可以小于2;最下面一层的结点都集中在 该层最左边的位置上,则称此二叉树为完全二 叉树 f.当二叉树里出现空的子树时,就增加新的、特 殊的结点——空树叶组成扩充二叉树,扩充二 叉树是满二叉树 外部路径长度E:从扩充的二叉树的根到每个 外部结点(新增的空树叶)的路径长度之和 内部路径长度I:扩充的二叉树中从根到每个内 部结点(原来二叉树结点)的路径长度之和 2.性质 a. 二叉树的第i层(根为第0层,i≥0)最多有 2^i个结点 b. 深度为k的二叉树至多有2k+1-1个结点 c. 任何一颗二叉树,度为0的结点比度为2的 结点多一个。n0 = n2 + 1 d. 满二叉树定理:非空满二叉树树叶数等于其 分支结点数加1 e. 满二叉树定理推论:一个非空二叉树的空子 树(指针)数目等于其结点数加1 f. 有n个结点(n>0)的完全二叉树的高度为 ?log2(n+1)?,深度为?log2(n+1)?? g. 对于具有n个结点的完全二叉树,结点按层 次由左到右编号,则有: 1) 如果i = 0为根结点;如果i>0,其父结点 编号是(i-1)/2 2) 当2i+1∈N,则称k是k'的父结点,k'是 的子结点 若有序对∈N,则称k' k″互为兄弟 若有一条由k到达ks的路径,则称k是 的祖先,ks是k的子孙 2.树/森林与二叉树的相互转换 a.树转换成二叉树 加线: 在树中所有兄弟结点之间加一连线 抹线: 对每个结点,除了其最左孩子外, 与其余孩子之间的连线 旋转: 45° b.二叉树转化成树 加线:若p结点是双亲结点的左孩子,则将 的右孩子,右孩子的右孩子, 所有右孩子,都与p的双亲用线连起来 线 调整:将结点按层次排列,形成树结构 c.森林转换成二叉树 将各棵树分别转换成二叉树 将每棵树的根结点用线相连 为轴心,顺时针旋转,构成二叉树型结构 d.二叉树转换成森林 抹线:将二叉树中根结点与其右孩子连线,及 沿右分支搜索到的所有右孩子间连线全部抹 掉,使之变成孤立的二叉树 还原:将孤立的二叉树还原成树 3.周游 a.先根(次序)周游 若树不空,则先访问根结点,然后依次先根周 游各棵子树 b.后根(次序)周游 若树不空,则先依次后根周游各棵子树,然后 访问根结点 c.按层次周游 若树不空,则自上而下自左至右访问树中每个 结点 4.存储结构 “左子/右兄”二叉链表表示法:结点左指针指 向孩子,右结点指向右兄弟,按树结构存储, 无孩子或无右兄弟则置空 5. “UNION/FIND算法”(等价类) 判断两个结点是否在同一个集合中,查找一个 给定结点的根结点的过程称为FIND 归并两个集合,这个归并过程常常被称为 UNION “UNION/FIND”算法用一棵树代表一个集合, 如果两个结点在同一棵树中,则认为它们在同 一个集合中;树中的每个结点(除根结点以外) 有仅且有一个父结点;结点中仅需保存父指针 信息,树本身可以存储为一个以其结点为元素 的数组 6.树的顺序存储结构 a. 带右链的先根次序表示法 在带右链的先根次序表示中,结点按先根次序 顺序存储在一片连续的存储单元中 每个结点除包括结点本身数据外,还附加两个 表示结构的信息字段,结点的形式为: info是结点的数据;rlink是右指针,指向结点 的下一个兄弟;ltag是一个左标记,当结点没 有子结点(即对应二叉树中结点没有左子结点 时),ltag为1,否则为0 b. 带双标记位的先根次序表示法 规定当结点没有下一个兄弟(即对应的二叉树 中结点没有右子结点时)rtag为1,否则为0 c. 带双标记位的层次次序表示法 结点按层次次序顺序存储在一片连续的存储单 元中 第七章图 1.定义 a.假设图中有n个顶点,e条边: 含有e=n(n-1)/2条边的无向图称作完全图 含有e=n(n-1) 条弧的有向图称作有向完全图 若边或弧的个数e < nlogn,则称作稀疏图, 否则称作稠密图 b. 顶点的度(TD)=出度(OD)+入度(ID) 顶点的出度: 以顶点v为弧尾的弧的数目 顶点的入度: 以顶点v为弧头的弧的数目 c.连通图、连通分量 若图G中任意两个顶点之间都有路径相通,则 称此图为连通图 若无向图为非连通图,则图中各个极大连通子 图称作此图的连通分量 d.强连通图、强连通分量 对于有向图,若任意两个顶点之间都存在一条 有向路径,则称此有向图为强连通图 否则,其各个极大强连通子图称作它的强连通 分量 e.生成树、生成森林 假设一个连通图有n个顶点和e条边,其中n-1 条边和n个顶点构成一个极小连通子图,称该 极小连通子图为此连通图的生成树 对非连通图,则将由各个连通分量构成的生成 树集合称做此非连通图的生成森林 2.存储结构 a.相邻矩阵表示法 表示顶点间相邻关系的矩阵 若G是一个具有n个顶点的图,则G的相邻矩 阵是如下定义的n×n矩阵: A[i,j]=1,若(Vi, Vj)(或)是图G的边 A[i,j]=0,若(Vi, Vj)(或)不是图G的边 b.邻接表表示法 为图中每个顶点建立一个单链表,第i个单链表 中的结点表示依附于顶点Vi的边(有向图中指 以Vi为尾的弧)(建立单链表时按结点顺序建 立) 3.周游 a. 深度优先周游: 从图中某个顶点V0出发,访问此顶点,然后依 次从V0的各个未被访问的邻接点出发,深度优 先搜索遍历图中的其余顶点,直至图中所有与 V0有路径相通的顶点都被访问到为止 b. 广度优先周游: 从图中的某个顶点V0出发,并在访问此顶点之 后依次访问V0的所有未被访问过的邻接点,随 后按这些顶点被访问的先后次序依次访问它们 的邻接点,直至图中所有与V0有路径相通的顶 点都被访问到为止,若此时图中尚有顶点未被 访问,则另选图中一个未曾被访问的顶点作起 始点,重复上述过程,直至图中所有顶点都被 访问到为止 4.拓扑排序 拓扑排序的方法是:1)选择一个入度为0的顶 点且输出之 2)从图中删掉此顶点及所有的出边 3)回到第1步继续执行,直至图空或者图不空 但找不到无前驱(入度为0)的顶点为止 5.单源最短路径(Dijkstra算法) 6.每对顶点间的最短路径(Floyd算法) 7.最小生成树 a.Prim算法 b.Kruskal算法 c.两种算法比较:Prim算法适合稠密图, Kruskal算法适合稀疏图 第八章内排序 算法最大时间平均时间 直接插入排 序 Θ(n2) Θ(n2) 冒泡排序Θ(n2) Θ(n2) 直接选择排 序 Θ(n2) Θ(n2) Shell排序Θ(n3/2) Θ(n3/2) 快速排序Θ(n2) Θ(nlog n) 归并排序Θ(nlog n) Θ(nlog n) 堆排序Θ(nlog n) Θ(nlog n) 桶式排序Θ(n+m) Θ(n+m) 基数排序Θ(d·(n+r)) Θ(d·(n+r)) 最小时间S(n) 稳定性 Θ(n) Θ(1) 稳定 Θ(n) Θ(1) 稳定 Θ(n2) Θ(1) 不稳定 Θ(n3/2) Θ(1) 不稳定 Θ(nlog n) Θ(log n) 不稳定 Θ(nlog n) Θ(n) 稳定 Θ(nlog n) Θ(1) 不稳定 Θ(n+m) Θ(n+m) 稳定 Θ(d·(n+r)) Θ(n+r) 稳定 第十章检索 1.平均检索长度(ASL)是待检索记录集合中元 素规模n的函数,其定义为: ASL= Pi为检索第i个元素的概率;Ci为找到第i个元 素所需的比较次数 2.散列 a.除余法 用关键码key除以M(取散列表长度),并取余 数作为散列地址 散列函数为:hash(key) =key mod M b.解决冲突的方法 开散列方法:把发生冲突的关键码存储在散列 表主表之外(在主表外拉出单链表) 闭散列方法:把发生冲突的关键码存储在表中 另一个位置上 c.线性探查 基本思想:如果记录的基位置存储位置被占用, 就在表中下移,直到找到一个空存储位置;依 次探查下述地址单元:d0+1,d0+2,...,m-1, 0,1,...,d0-1;用于简单线性探查的探查 函数是:p(K, i) = i d.散列表的检索 1.假设给定的值为K,根据所设定的散列函数h, 计算出散列地址h(K) 2. 如果表中该地址对应的空间未被占用,则检 索失败,否则将该地址中的值与K比较 3. 若相等则检索成功;否则,按建表时设定的 处理冲突方法查找探查序列的下一个地址,如 此反复下去,直到某个地址空间未被占用(可 以插入),或者关键码比较相等(有重复记录, 不需插入)为止 e.散列表的删除:删除后在删除地点应加上墓 碑(被删除标记) f.散列表的插入:遇到墓碑不停止,知道找到真 正的空位置 第十一章索引技术 1.概念: a.主码:数据库中的每条记录的唯一标识 b.辅码:数据库中可以出现重复值的码 2.B树 a.定义:B树定义:一个m阶B树满足下列条 件: (1) 每个结点至多有m个子结点; (2) 除根和叶外 其它每个结点至少有??个子结点; (3) 根结点至少有两个子结点 例外(空树,or独根) (4) 所有的叶在同一层,可以有??- 1到m-1个 关键码 (5) 有k个子结点的非根结点恰好包含k-1个关 键码 b.查找 在根结点所包含的关键码K1,…,Kj中查找给 定的关键码值(用顺序检索(key少)/二分检索 (key多));找到:则检索成功;否则,确定要查 的关键码值是在某个Ki和Ki+1之间,于是取 pi所指结点继续查找;如果pi指向外部结点, 表示检索失败. c.插入 找到的叶是插入位置,若插入后该叶中关键码 个数

相关主题