叶军伟
(丽江师范高等专科学校,云南丽江 674100)
数据逻辑结构浅析
叶军伟
(丽江师范高等专科学校,云南丽江 674100)
在计算机科学中,数据的逻辑结构通常是指程序设计问题中(可以是数值计算,也可以是非数值计算)计算机的操作对象(又叫数据元素)之间的抽象的逻辑上的关系和基于这种逻辑关系的运算。本文介绍了几类常用的逻辑结构。
数据结构;逻辑结构;程序设计
数据结构是指互相之间存在着一种或多种关系的数据元素的集合。在任何一个问题中,我们要处理的数据都不会孤立存在,它们之间总会存在着某种关系,这种数据元素相互之间的关系称为结构。抽象的逻辑上的关系称为逻辑结构,物理的在计算机中的存储关系称为存储结构。根据数据元素之间的关系,有四种常用的数据结构:集合结构、线性结构、树型结构、图状结构。本文中的数据结构是从操作对象抽象出来的数学模型,结构定义中的“关系”描述的是数据元素之间的逻辑关系,因此又称为逻辑结构。
集合结构是由具有相同属性的数据元素按任意次序排列而成。若集合为空,则表示为{},若非空则表示为:
其中n>0,每个元素的下标为对该元素的编号,它是为了区别而任意标注的,不代表任何次序。
线性结构的数据元素是一对一的关系,是有序的集合。其特点是:可以用元素的下标确定该元素的位置;存在唯一的一个“第一个”数据元素和唯一的一个“最后一个”数据元素;除第一个元素外,集合中的每个数据元素有且只有一个前驱;除最后一个外,集合中的每个数据元素均有且只有一个后继。
2.1 线性表。线性表是具有相同属性的数据元素的一个有限序列。该序列中元素的个数称为线性表长度。线性表长度可以为0,表明它是一个空表,即不含有任何元素。若线性表为一个非空表,则一般表示为:
线性表中的第一个元素a1称为表头元素,an称为表尾元素。线性表的元素是按照前后位置线性有序的。
2.2 栈。栈是一种特殊的线性表,其限定仅在表尾进行插入或删除操作。栈的表头端称为栈底,表尾端叫做栈顶。由于栈的插入和删除仅在栈顶一端进行,后进栈的元素必定先出栈,所以栈又称为后进先出的线性表。
2.3 队列。和栈相反,它只允许在表的一端(队尾)进行插入操作,而在表的另一端(队头)进行删除操作。队列是一种先进先出的线性表。
除了以上三种线性结构外,还有串、数组和广义表等线性结构。
树型结构是一种重要的非线性数据结构。常见的有树和二叉树,而多颗树或者二叉树则称为森林,直观看来,树型结构是以分支关系定义的层次结构。
3.1 树。树是n(n大于等于0)个结点的有限集。在任意一颗非空树中:①有唯一的一个根结点;②当n>1时,其余结点可分为m(m>0)个交集为空的有限集合K1,K2,…,Km,其中每一个集合本身又是一颗树,并且称其为根的子树。
3.2 二叉树。二叉树是一种特殊的树型结构,它的特点是每个结点至多只有两棵子树,并且子树有左右之分。二叉树的递归定义为:二叉树或者是一棵空树,或者是一棵由一个根结点和两棵互不相交的子树所组成的非空树,这两棵子树又同样都是一棵二叉树,分别称作根的左子树和右子树。
图状结构是由顶点集合和边集合组成的。其中,顶点集合是顶点的非空有限集,边集合是边的有限集合,边集合可以为空,边是顶点的无序对或序偶。对于顶点集合上的每个顶点,在边集合中都允许有任意多个前驱和任意多个后继,即对每个顶点的前驱和后继个数均不加限制。
对于一个图G,若边集E(G)中的边是顶点的无序对,则称此图为无向图;若若边集E(G)中的边是顶点的序偶,则称此图为有向图。
图状结构是一种较为复杂的数据结构,在线性结构中,数据元素之间为线性关系,在树型结构中,数据元素之间为层次关系,有明显的前驱和后继,而在图状结构中,数据元素之间的关系可以是任意的。
计算机应用范围的普及,需要处理的信息量也变得十分巨大,信息的类型也多种多样,而相应的需要开发的系统程序和应用程序也规模很大,结构复杂。因此,要开发设计出一个“好”的程序,必须分析待处理对象信息的特征及各对象信息之间存在的关系,抽象设计出适当的数学模型,并根据需要对信息做出的操作和处理选取适当的数学模型,这就是数据结构所要研究的问题。不管在何种类型的程序设计中,数据的逻辑结构的选择都是最重要的设计考虑因素和前提。许多大型系统的构造经验都表明,系统构造的质量和系统实现的困难程度都严重依赖于是否选择了适当的数据结构。很多时候,确定了数据结构后,算法就容易得到了。有些时候事情也会反过来,我们根据特定算法来选择数据结构与之适应。不论哪种情况,选择合适的数据结构都是非常重要的。
要处理数据首先要把数据存储在计算机内,数据的存储方法是数据逻辑结构的实现形式,是其在计算机内的表示,所以讨论一个数据逻辑结构必须同时讨论其可能的存储结构及其之上能够执行的算法才有意义。
[1]徐孝凯,王凤禄.数据结构简明教程[M].北京:清华大学出版社,2005.
[2]严蔚敏,吴伟民.数据结构(C语言版)[M].北京:清华大学出版社,2007.
TP391
A
1003-5168(2014)04-0025-01