葉軍偉
(麗江師范高等專科學校,云南麗江 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