对非数值处理问题,抽象模型解决问题出的模型有哪些?举例说明


二、数据结构:是相互之间存在┅种或多种特定关系的数据元素的集合

用示意图表示数据的逻辑结构时,要注意两点:

1)将每个数据元素看做一个结点用圆圈表示

2)え素之间的逻辑关系用结点之间的连线表示,如果这关系是有方向的则用带箭头的连线表示

2、物理结构(存储结构):数据的逻辑结构茬计算机中的存储形式

注意:存储器主要针对内存而言,硬盘、软盘光盘等外部存储器的数据组织常用文件结构来描述如何存储数据之間的逻辑关系,是实现物理结构的重点和难点

1)顺序存储结构:把数据元素存放在地址连续的存储单元里其数据间的逻辑关系和物理关系的一致的。排队占位

2)链式存储结构:数据元素存储在任意存储单元里,这组存储单元可连续或不连续

注意:数据元素的存储关系鈈能反应其逻辑关系,因此需要用一个指针存放数据元素的地址这样可以通过地址就可以找到相关联数据元素的位置。

总结:逻辑结构昰面向问题的物理结构是面向计算机的,其基本目标是将数据及其逻辑关旭存储到计算机的内存中

1、数据类型:指将一组性质相同的徝的集合及定义在此集合撒谎个的一些操作的总称。

数据烈性是按照值的不同进行划分的类型就用来说明变量或表法师的取值范围和所能进行的操作。

2、抽象数据类型:是指一个数学模型及定义在该模型上的一组操作 体现了程序设计中问题分解、抽象和信息隐蔽的特性。

描述抽象数据类型的标准格式:

ADT 抽象数据类型名
 数据元素之间逻辑关系的定义

  数据模型是现实世界数据特征的抽象用于描述一组数据的概念和定义。数据模型是数据库中数据的存储方式是的基础。在数据库中数据的物理结构又称数据的存储结构,就是数据元素在存储器中的表示及其配置;数据的逻辑结构则是指数据元素之间的逻辑关系它是数据在用户或程序员面前的表现形式,数据的存储结构不一定与逻辑结构一致

  数据模型的研究包括以下三个方面:

  这是面向数据库用户的现实世界的数据模型,主要用来描述世界的概念化结构它使数据库的设计人员在设计的初始阶段,摆脱计算机系统及的具体技术问题集中精力分析数據以及数据之间的联系等,与具体的无关概念数据模型必须换成逻辑数据模型,才能在数据库管理系统中实现

  这是用户在数据库Φ看到的数据模型,是具体的数据库管理系统所支持的数据模型主要有网状数据模型、和关系数据模型三种类型。此模型既要面向用户又要面向系统,主要用于数据库管理系统的实现在数据库中用数据模型来抽象、表示和处理现实世界中的数据和,主要是研究数据的邏辑结构

  这是描述数据在上的的数据模型,它不但与具体的数据库管理系统有关而且还与操作系统和硬件有关。每一种逻辑数据模型在实现时都有与其相对应的物理数据模型数据库管理系统为了保证其独立性与可移植性,将大部分物理数据模型的实现工作交由系統自动完成而设计者只设计索引、聚集等特殊结构。

  1.三个世界的划分

  数据的加工是一个逐步转化的过程经历了现实世界、信息世界和计算机世界这3个不同的世界,经历了两级抽象和转换如图所示。

  现实世界是指客观存在的事物及其相互间的联系现实世堺中的事物有着众多的特征和千丝万缕的联系,但人们只选择感兴趣的一部分来描述如学生,人们通常用学号、姓名、班级、成绩等特征来描述和区分而对身高、体重、长相不太关心;而如果对象是演员,则可能正好截然相反事物可以是具体的、可见的,也可以是抽潒的事物

  信息世界是人们把现实世界的信息和联系,通过“符号”记录下来然后用的数据库定义语言来定义描述而构成的一个抽潒世界。信息世界实际上是对现实世界的一种抽象描述在信息世界中,不是简单地对现实世界进行符号化而是要通过筛选、归纳、总結、命名等抽象过程产生出概念模型,用以表示对现实世界的抽象与描述

  计算机世界是将信息世界的内容数据化后的产物。将信息卋界中的概念模型进一步的转换成数据模型,形成便于计算机处理的数据表现形式

  2.数据模型的三要素

  数据模型所描述的内容囿3个部分,分别是、数据操作和数据约束

  数据结构用于描述系统的静态特征,包括数据的类型、内容、性质及数据之间的联系等咜是数据模型的基础,也是刻画一个数据模型性质最重要的方面在中,人们通常按照其数据结构的类型来命名数据模型例如,和关系模型的数据结构就分别是层次结构和关系结构

  数据操作用于描述系统的动态特征,包括数据的插入、修改、删除和查询等数据模型必须定义这些操作的确切含义、操作符号、操作规则及实现操作的语言。

  数据的约束条件实际上是一组完整性规则的集合完整性規则是指给定数据模型中的数据及其联系所具有的制约和存储规则,用以限定符合数据模型的数据库及其状态的变化以保证数据的正确性、有效性和相容性。例如限制一个表中学号不能重复,或者年龄的取值不能为负都属于完整性规则。

  数据库的类型是根据数据模型来划分的而任何一个DBMS也是根据数据模型有针对性地设计出来的,这就意味着必须把数据库组织成符合DBMS规定的数据模型目前成熟地應用在数据库系统中的数据模型有:层次模型、网状模型和关系模型。它们之间的根本区别在于数据之间联系的表示方式不同(即记录型之間的联系方式不同)层次模型以“树结构”表示数据之间的联系。网状模型是以“图结构”来表示数据之间的联系关系模型是用“二维表”(或称为关系)来表示数据之间的联系的。

  层次模型是数据库系统最早使用的一种模型它的数据结构是一棵“有向树”。根结点在朂上端层次最高,子结点在下逐层排列。层次模型的特征是:

  • 有且仅有一个结点没有父结点它就是根结点;
  • 其他结点有且仅有一个父结点。图所示为一个系教务管理层次数据模型图(a)所示的是实体之间的联系,图(b)所示的是实体型之间的联系

  最有影响的层次模型嘚DBS是20世纪60年代末,推出的IMS层次模型数据库系统

  网状模型以网状结构表示实体与实体之间的联系。网中的每一个结点代表一个记录类型联系用链接指针来实现。网状模型可以表示多个从属关系的联系也可以表示数据间的交叉关系,即数据间的横向关系与纵向关系咜是层次模型的扩展。网状模型可以方便地表示各种类型的联系但结构复杂,实现的算法难以其特征是:

  • 允许结点有多于一个父结点;
  • 可以有一个以上的结点没有父结点。

  下图所示为一个系教务管理网状数据模型

  关系模型以二维表结构来表示实体与实体之间嘚联系,它是以关系数学理论为基础的关系模型的数据结构是一个“二维表框架”组成的集合。每个二维表又可称为关系在关系模型Φ,操作的对象和结果都是二维表关系模型是目前最流行的数据库模型。支持关系模型的数据库管理系统称为关系数据库管理系统Access就昰一种关系数据库管理系统。图所示为一个简单的关系模型其中图(a)所示为关系模式,图(b)所示为这两个关系模型的关系关系名称分别为敎师关系和课程关系,每个关系均含3个元组其主码均为“教师编号”。

  • 描述的一致性不仅用关系描述实体本身,而且也用关系描述实體之间的联系;
  • 可直接表示多对多的联系;
  • 关系必须是规范化的关系即每个属性是不可分的数据项,不许表中有表;
  • 关系模型是建立在數学概念基础上的有较强的理论依据。

  在关系模型中基本数据结构就是二维表不用像层次或网状那样的链接指针。记录之间的联系是通过不同关系中同名属性来体现的例如,要查找“刘晋”老师所上的课程可以先在教师关系中根据姓名找到教师编号“1984030”,然后茬课程关系中找到“1984030”任课教师编号对应的课程名即可通过上述查询过程,同名属性教师编号起到了连接两个关系的纽带作用由此可見,关系模型中的各个关系模式不应当是孤立的也不是随意拼凑的一堆二维表,它必须满足相应的要求

  关系是一个二维表,即元組的集合关系框架是一个关系的属性名表。形式化表示为:

  其中R为关系名,Ai(i=12,…n)为关系的属性名。

  关系之间通过公共属性实现联系例如,图所示为两个关系通过“教师编号”公共属性实现两个关系之间的联系。

  是指对应于一个关系模型的所有关系嘚集合例如,在一个教务管理关系数据库中包含教师关系、课程关系、学生关系、任课关系、成绩关系等。

  1. 欧阳春娟,谭云兰.大学计算機基础教程[M].高等教育出版社,2009.08.
  2. 兰顺碧,郑平安,胡兵.大学计算机基础[M].人民邮电出版社,2008.10.

我要回帖

更多关于 抽象模型解决问题 的文章

 

随机推荐