『壹』 順序存儲結構是通過什麼表示元素之間的關系
順序存儲結構
是通過數據元素的地址直接反應數據元素間的邏輯關系.邏輯上相鄰,存儲位置相鄰
『貳』 判斷題:在順序存儲結構中,有時也存儲數據結構中元素之間的關系。是錯的為什麼
順序存儲結構中,數據元素都是按順序依次存放的,並沒有存儲元素之間的關系。像鏈表,除了存儲數據外,還存儲了下一個數據的指針,這才叫存儲了數據元素之間的關系
『叄』 請問數據的儲存結構有哪些
數據的存儲結構包括順序存儲和鏈式存儲。
數據元素之間的關系有兩種不同的表示方法:順序映象和非順序映象,並由此得到兩種不同的存儲結構:順序存儲結構和鏈式存儲結構。數據的存儲結構是指數據的邏輯結構在計算機中的表示。順序存儲方法它是把邏輯上相鄰的結點存儲在物理位置相鄰的存儲單元里,結點間的邏輯關系由存儲單元的鄰接關系來體現,由此得到的存儲表示稱為順序存儲結構。順序存儲結構是一種最基本的存儲表示方法,通常藉助於程序設計語言中的數組來實現。鏈接存儲方法它不要求邏輯上相鄰的結點在物理位置上亦相鄰,結點間的邏輯關系是由附加的指針欄位表示的。由此得到的存儲表示稱為鏈式存儲結構,鏈式存儲結構通常藉助於程序設計語言中的指針類型來實現。
更多關於數據的儲存結構有哪些,進入:https://www.abcgonglue.com/ask/cb58ee1615824374.html?zd查看更多內容
『肆』 存儲結構的概念
存儲結構的概念如下:
順序存儲方法它是把邏輯上相鄰的結點存儲在物理位置相鄰的存儲單元里,結點間的邏輯關系由存儲單元的鄰接關系來體現,由此得到的存儲表示稱為順序存儲結構。順序存儲結構是一種最基本的存儲表示方法,通常藉助於程序設計語言中的數組來實現。
順序存儲和鏈接存儲是數據的兩種最基本的存儲結構。
在順序存儲中,每個存儲空間含有所存元素本身的信息,元素之間的邏輯關系是通過數組下標位置簡單計算出來的線性表的順序存儲,若一個元素存儲在對應數組中的下標位置為i,則它的前驅元素在對應數組中的下標位置為i-1,它的後繼元素在對應數組中的下標位置為i+1。
在鏈式存儲結構中,存儲結點不僅含有所存元素本身的信息,而且含有元素之間邏輯關系的信息。
數據的鏈式存儲結構可用鏈接表來表示。
其中data表示值域,用來存儲節點的數值部分。Pl,p2,…,Pill(1n≥1)均為指針域,每個指針域為其對應的後繼元素或前驅元素所在結點(以後簡稱為後繼結點或前驅結點)的存儲位置。
通過結點的指針域(又稱為鏈域)可以訪問到對應的後繼結點或前驅結點,若一個結點中的某個指針域不需要指向其他結點,則令它的值為空(NULL)。
在數據的順序存儲中,由於每個元素的存儲位置都可以通過簡單計算得到,所以訪問元素的時間都相同。
而在數據的鏈接存儲中,由於每個元素的存儲位置保存在它的前驅或後繼結點中,所以只有當訪問到其前驅結點或後繼結點後才能夠按指針訪問到,訪問任一元素的時間與該元素結點在鏈式存儲結構中的位置有關。
鏈接存儲方法它不要求邏輯上相鄰的結點在物理位置上亦相鄰,結點間的邏輯關系是由附加的指針欄位表示的。由此得到的存儲表示稱為鏈式存儲結構,鏈式存儲結構通常藉助於程序設計語言中的指針類型來實現。
以上內容參考:網路-存儲結構
『伍』 線性表的順序存儲結構是以什麼來表示數據元素之間的邏輯關系的
線性表是最基本、最簡單、也是最常用的一種數據結構。線性表(linear list)是數據結構的一種,一個線性表是n個具有相同特性的數據元素的有限序列。
線性表主要由順序表示或鏈式表示。在實際應用中,常以棧、隊列、字元串等特殊形式使用。
順序表示指的是用一組地址連續的存儲單元依次存儲線性表的數據元素,稱為線性表的順序存儲結構或順序映像(sequential mapping)。它以「物理位置相鄰」來表示線性表中數據元素間的邏輯關系,可隨機存取表中任一元素。
由此得到的存儲結構為順序存儲結構,通常順序存儲結構是藉助於計算機程序設計語言(例如c/c++)的數組來描述的。
順序存儲結構的主要優點是節省存儲空間,因為分配給數據的存儲單元全用存放結點的數據(不考慮c/c++語言中數組需指定大小的情況),結點之間的邏輯關系沒有佔用額外的存儲空間。
採用這種方法時,可實現對結點的隨機存取,即每一個結點對應一個序號,由該序號可以直接計算出來結點的存儲地址。但順序存儲方法的主要缺點是不便於修改,對結點的插入、刪除運算時,可能要移動一系列的結點。
推薦課程:C語言教程。
線性表順序存儲結構的結構代碼:
#define MAXSIZE 20
typedef int ElemType;
typedef struct
{
ElemType data[MAXSIZE];
int length; // 線性表當前長度
} SqList;
順序存儲結構封裝需要三個屬性:
存儲空間的起始位置,數組data,它的存儲位置就是線性表存儲空間的存儲位置。
線性表的最大存儲容量:數組的長度MaxSize。
線性表的當前長度:length。
注意:數組的長度與線性表的當前長度需要區分一下:數組的長度是存放線性表的存儲空間的總長度,一般初始化後不變。而線性表的當前長度是線性表中元素的個數,是會變化的。
線性表順序存儲結構的優缺點
線性表的順序存儲結構,在存、讀數據時,不管是哪個位置,時間復雜度都是O(1)。而在插入或刪除時,時間復雜度都是O(n)。
這就說明,它比較適合元素個數比較穩定,不經常插上和刪除元素,而更多的操作是存取數據的應用。
優點:
無須為表示表中元素之間的邏輯關系而增加額外的存儲空間。
可以快速地存取表中任意位置的元素。
缺點:
插上和刪除操作需要移動大量元素。
當線性表長度變化較大時,難以確定存儲空間的容量。
容易造成存儲空間的「碎片」
『陸』 什麼是線性表線性表有哪兩種存儲結構它們是如何存儲數據元素的各有什麼優點
線性表:有n(n>0)的數據元素a1,a2,a3,.....,an組成的有限序列。
兩種存儲結構:
順序存儲結構:存取較快,插入刪除較麻煩。
鏈式存儲結構:存取較慢,插入刪除叫簡單。
存儲數據元素:
順序存儲結構:直接存取。優點空間連續,位置明確。
鏈式存儲結構:由於鏈表特徵,需要從表頭掃面。優點空間分散,位置不明確。
線性表中數據元素之間的關系是一對一的關系,即除了第一個和最後一個數據元素之外,其它數據元素都是首尾相接的,注意,這句話只適用大部分線性表,而不是全部。比如,循環鏈表邏輯層次上也是一種線性表。
(6)存儲結構和元素關系擴展閱讀:
線性表中的個數n定義為線性表的長度,n=0時稱為空表。在非空表中每個數據元素都有一個確定的位置,如用ai表示數據元素,則i稱為數據元素ai在線性表中的位序。
線性表的相鄰元素之間存在著序偶關系。如用(a1,…,ai-1,ai,ai+1,…,an)表示一個順序表,則表中ai-1領先於ai,ai領先於ai+1,稱ai-1是ai的直接前驅元素,ai+1是ai的直接後繼元素。
當i=1,2,…,n-1時,ai有且僅有一個直接後繼,當i=2,3,…,n時,ai有且僅有一個直接前驅。
『柒』 在數據結構課程中,數據的邏輯結構,數據的存儲結構及數據的運算之間存在著怎樣的關系
1:數據的邏輯結構說明數據元素之間的順序關系,它依賴於計算機的存儲結構 答:錯. 說明:邏輯結構可用不同的存儲結構實現,「它依賴於計算機的存儲結構」完全說不通。 2:演算法的運行時間涉及到加,減,乘,除,轉移,存取等基本運算。要想准確的計算總運行時間是不可行的。 答:對。 說明:軟硬體環境都是千差萬別的。也沒必要去准確計算。演算法分析只是為了比較不同演算法的優劣。 3:在順序存儲結構中,有時也存儲數據結構中元素之間的關系。(這個我覺得靜態鏈表在存儲結構上是順序存儲,可是其中不也存儲了節點之間的關系的么?) 答:錯。 說明:「順序存儲結構」必須體現元素之間的關系,不是「有時」。 「鏈式存儲結構」並不是「順序存儲結構」,後者稱「順序表」或「鄰接表」。 有些書用「鏈表是順序存取」說法,但並不是指「鏈表是順序存儲結構」。
『捌』 搞不懂邏輯結構和存儲結構之間的關系。
存儲結構是數據的邏輯結構在計算機中的表示。
邏輯結構:
系統的邏輯結構是對整個系統從思想的分類,把系統分成若干個邏輯單元,分別實現自己的功能。一般在系統開發時,邏輯結構往往都由架構師完成。系統的邏輯結構對系統的開發起到重要性的決定。
存儲結構:
數據元素之間的關系有兩種不同的表示方法:順序映象和非順序映象,並由此得到兩種不同的存儲結構:順序存儲結構和鏈式存儲結構。數據的存儲結構是指數據的邏輯結構在計算機中的表示。
(8)存儲結構和元素關系擴展閱讀:
邏輯結構元素決定輸入、存儲、發送、處理和信息傳遞的基本操作功能,常將邏輯結構元素稱為邏輯模塊。邏輯結構元素可以是計算機操作系統、終端模塊、通信程序模塊等。
邏輯結構元素還可以是相關的幾個邏輯模塊聯合起來的更復雜的實體。分析邏輯結構元素的相互作用,應考慮整個系統的操作,研究處理與信息流有關的進程,並決定系統的邏輯資源。
『玖』 何謂數據的邏輯結構何謂數據的存儲結構兩者有何聯系
邏輯結構指反映數據元素之間的邏輯關系的數據結構,其中的邏輯關系是指數據元素之間的前後件關系,而與他們在計算機中的存儲位置無關。邏輯結構包括:
1、集合結構:數據結構中的元素之間除了「同屬一個集合」
的相互關系外,別無其他關系。
2、線性結構:數據結構中的元素存在一對一的相互關系。
3、樹形結構:數據結構中的元素存在一對多的相互關系。
4、圖形結構:數據結構中的元素存在多對多的相互關系。
存儲結構指數據元素連同其邏輯關系在存儲器上的存放形式,主要的有四類:順序、鏈接、索引、散列。一種數據結構可表示成一種或多種存儲結構。
兩者的關系在於:邏輯結構用於設計演算法,存儲結構用於演算法編碼實現。具體而言某種存儲結構與某種邏輯結構沒有必然的聯系,演算法的實現效率越高、解決問題越方便。
(9)存儲結構和元素關系擴展閱讀
數據結構是指同一數據元素類中各數據元素之間存在的關系。數據結構分別為邏輯結構、存儲結構(物理結構)和數據的運算。
數據的邏輯結構是從具體問題抽象出來的數學模型,是描述數據元素及其關系的數學特性的,有時就把邏輯結構簡稱為數據結構。邏輯結構是在計算機存儲中的映像,形式地定義為(K,R)(或(D,S)),其中,K是數據元素的有限集,R是K上的關系的有限集。
根據數據元素間關系的不同特性,通常有下列四類基本的結構:集合結構、線性結構、樹型結構、圖形結構。
線性結構的特點是數據元素之間是一種線性關系,數據元素「一個接一個的排列」。在一個線性表中數據元素的類型是相同的,或者說線性表是由同一類型的數據元素構成的線性結構。
線性表是最簡單、最基本、也是最常用的一種線性結構。
它有兩種存儲方法:順序存儲和鏈式存儲,它的主要基本操作是插入、刪除和檢索等。
數據結構在計算機中的表示(映像)稱為數據的物理(存儲)結構。它包括數據元素的表示和關系的表示。數據元素之間的關系有兩種不同的表示方法:順序映象和非順序映象,並由此得到兩種不同的存儲結構:順序存儲結構和鏈式存儲結構。
1、順序存儲方法:它是把邏輯上相鄰的結點存儲在物理位置相鄰的存儲單元里,結點間的邏輯關系由存儲單元的鄰接關系來體現,由此得到的存儲表示稱為順序存儲結構。順序存儲結構是一種最基本的存儲表示方法,通常藉助於程序設計語言中的數組來實現。
2、鏈接存儲方法:它不要求邏輯上相鄰的結點在物理位置上亦相鄰,結點間的邏輯關系是由附加的指針欄位表示的。由此得到的存儲表示稱為鏈式存儲結構,鏈式存儲結構通常藉助於程序設計語言中的指針類型來實現
3、索引存儲方法:除建立存儲結點信息外,還建立附加的索引表來標識結點的地址。
4、散列存儲方法:就是根據結點的關鍵字直接計算出該結點的存儲地址。
數據結構中,邏輯上(邏輯結構:數據元素之間的邏輯關系)可以把數據結構分成線性結構和非線性結構。
線性結構的順序存儲結構是一種順序存取的存儲結構,線性表的鏈式存儲結構是一種隨機存取的存儲結構。線性表若採用鏈式存儲表示時所有結點之間的存儲單元地址可連續可不連續。邏輯結構與數據元素本身的形式、內容、相對位置、所含結點個數都無關。
參考資料來源:搜狗網路:數據結構
『拾』 在數據結構中,邏輯結構和存儲結構之間的關系
存儲結構是邏輯結構的存儲映像,邏輯結構指的是數據間的關系,它又分為線性結構和非線性結構,這兩者並不沖突。一個指的是數據之間的關系,而另一個指這種關系在計算機中的表現形式。兩者的區別就在於給他們定義的特殊操作,它們都有」出「和」入「兩種操作,一個是「先進先出」,而一個是「後進先出」。
一種邏輯結構在計算機里可以用不同的存儲結構實現。比如邏輯結構中簡單的線性結構,可以用數組(順序存儲)或單向鏈表(鏈接存儲)來實現。邏輯結構:指各數據元素之間的邏輯關系。存儲結構:就是數據的邏輯結構用計算機語言的實現。
(10)存儲結構和元素關系擴展閱讀:
1、邏輯結構
是指數據之間的相互關系。通常分為四類結構:
集合:結構中的數據元素除了同屬於一種類型外,別無其它關系。
線性結構:結構中的數據元素之間存在一對一的關系。
樹型結構:結構中的數據元素之間存在一對多的關系。
圖狀結構:結構中的數據元素之間存在多對多的關系。
2、存儲結構
是指數據結構在計算機中的表示,又稱為數據的物理結構。通常由四種基本的存儲方法實現:
順序存儲方式。數據元素順序存放,每個存儲結點只含一個元素。存儲位置反映數據元素間的邏輯關系。存儲密度大。但有些操作(如插入、刪除)效率較差。
數據元素間的邏輯關系。這種方式不要求存儲空間連續,便於動態操作(如插入、刪除等),但存儲空間開銷大(用於指針),另外不能折半查找等。
索引存儲方式。除數據元素存儲在一組地址連續的內存空間外,還需建立一個索引表,索引表中索引指示存儲結點的存儲位置(下標)或存儲區間端點(下標)。
散列存儲方式。通過散列函數和解決沖突的方法,將關鍵字散列在連續的有限的地址空間內,並將散列函數的值解釋成關鍵字所在元素的存儲地址。其特點是存取速度快,只能按關鍵字隨機存取,不能順序存取,也不能折半存取。