『壹』 面試題:數據結構中常見的線性結構有哪些,他們之間有什麼區別
常用的線性結構有:線性表,棧,隊列,數組,串。線性表是多個相同元素組成的有限線性序列。棧是一種特殊線性表,它將插入和刪除限制在表的一端進行,是一種後進先出表。隊列也是一種操作受限的特殊線性表,它只允許在表的前端進行刪除操作,而在表的後端進行插入操作。順序存儲結構在計算機內用一組連續的內存單元來存儲數組。一堆數組本身就是順序表結構,多維數組是一種特殊的線性結構。串是一種數據元素固定為字元的線性表。串上的操作是針對串的整體或串的某一部分子串進行的,而線性表是針對線性表上的某個數據元素進行的。
『貳』 線性表的邏輯結構與存儲結構的區別
數據的邏輯結構也稱為數據結構,分兩大類:線性結構和非線性結構。
存儲結構分四類:順序存儲、鏈接存儲、索引存儲和散列存儲。
線性結構中,包括了順序演算法,和鏈表。也就是說,存儲結構的前兩種用的是線性結構的演算法,非線性結構至少存在一個數據元素,它具有兩個或者兩個以上的前驅或後繼.典型的就是樹和二叉樹。而索引演算法用的就是樹的結構,也即是說他屬於非線性結構演算法。最好是散列存儲,典型例子就是hash(哈希)用的是隨即散列函數,當然是非線性結構演算法。
由此可見,存儲結構用的是不同的邏輯結構,也就是用了兩種不同的演算法。這個就是他們兩者的關系。
『叄』 線性表的鏈式存儲結構和順序存儲結構的區別
順序存儲結構就是用一組地址連續的存儲單元依次存儲該線性表中的各個元素.由於表中各個元素具有相同的屬性,所以佔用的存儲空間相同.因此,在內存中可以通過地址計算直接存取線性表中的任一元素.這種結構的特點是邏輯上相鄰的元素物理上也相鄰.用順序結構存儲的線性表稱作順序表.
線性表按鏈式存儲時,每個數據元素
(結點)的存儲包括數據區和指針區兩個部分.數據區存放結點本身的數據,指針區存放其後繼元素的地址
(沒有後繼元素時設置為空字元(Null)..只要知道該線性表的起始地址
(記錄在頭指針中),表中的各個元素就可通過其間的鏈接關系逐步找到
『肆』 敘述線性表兩種存儲結構各自的主要特點
線性表的兩種存儲結構分別是順序存儲結構和鏈式存儲結構。
順序存儲結構的主要特點是:
(1)結點中只有自身的信息域,沒有關聯信息域。因此,順序存儲結構的存儲密度大、存儲空間利用率高。
(2)通過計算地址直接訪問任何數據元素,即可以隨機訪問。
(3)插入和刪除操作會引起大量元素的移動。
鏈式存儲結構的主要特點是:
(1)結點除自身的信息域外,還有表示關聯信息的指針域。因此,鏈式存儲結構的存儲密度小、存儲空間利用率低。
(2)在邏輯上相鄰的結點在物理上不必相鄰,因此,不可以隨機存取,只能順序存取。
(3)插入和刪除操作方便靈活,不必移動結點只需修改結點中的指針域即可。
『伍』 什麼是線性表線性表有哪兩種存儲結構它們是如何存儲數據元素的各有什麼優點
線性表:有n(n>0)的數據元素a1,a2,a3,.....,an組成的有限序列。
兩種存儲結構:
順序存儲結構:存取較快,插入刪除較麻煩。
鏈式存儲結構:存取較慢,插入刪除叫簡單。
存儲數據元素:
順序存儲結構:直接存取。優點空間連續,位置明確。
鏈式存儲結構:由於鏈表特徵,需要從表頭掃面。優點空間分散,位置不明確。
線性表中數據元素之間的關系是一對一的關系,即除了第一個和最後一個數據元素之外,其它數據元素都是首尾相接的,注意,這句話只適用大部分線性表,而不是全部。比如,循環鏈表邏輯層次上也是一種線性表。
(5)不同存儲結構下的線性表怎麼區別擴展閱讀:
線性表中的個數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有且僅有一個直接前驅。
『陸』 線性表的兩種存儲結構各有哪些優缺點
線性表具有兩種存儲結構即順序存儲結構和鏈接存儲結構。
線性表的順序存儲結構可以直接存取數據元素,方便靈活、效率高,但插入、刪除操作時將會引起元素的大量移動,因而降低效率
而在鏈接存儲結構中內存採用動態分配,利用率高,但需增設指示結點之間關系的指針域,存取數據元素不如順序存儲方便,但結點的插入、刪除操作較簡單。
『柒』 數據的儲存結構主要有哪兩種有什麼主要區別
數據的儲存結構主要有:順序存儲結構和鏈式存儲結構。
主要區別
一、存儲單元的連續性不同
鏈式存儲結在構計算機中用一組任意的存儲單元存儲線性表的數據元素(這組存儲單元可以是連續的,也可以是不連續的)。
順序存儲結構在計算機中用一組地址連續的存儲單元依次存儲線性表的各個數據元素。
二、優缺點不同
空間上
順序比鏈式節約空間。是因為鏈式結構每一個節點都有一個指針存儲域。
存儲操作上:
順序支持隨機存取,方便操作
插入和刪除上:
鏈式的要比順序的方便(因為插入的話順序表也很方便,問題是順序表的插入要執行更大的空間復雜度,包括一個從表頭索引以及索引後的元素後移,而鏈表是索引後,插入就完成了)
三、適用方向不同
鏈式存儲適用於在較頻繁地插入、刪除、更新元素時,而順序存儲結構適用於頻繁查詢時使用。
『捌』 根據存儲結構的不同,線性表具體可分為哪些類型
摘要 您好,很榮幸幫您解答--線性表存儲結構有2種,分別是順序存儲和鏈性存儲結構。
『玖』 敘述線性表兩種存儲結構各自的主要特點
兩種存儲結構各自的主要特點
1、順序存儲結構:存儲單元地址連續,它以「物理位置相鄰」來表示線性表中數據元素間的邏輯關系,可隨機存取表中任一元素。
2、鏈式存儲結構:存儲單元地址為任意一組,它的存儲單元可以是連續的,也可以是不連續的。
在表示數據元素之間的邏輯關系時,除了存儲其本身的信息之外,還需存儲一個指示其直接後繼的信息(即直接後繼的存儲位置),這兩部分信息組成數據元素的存儲映像,稱為結點(node)。
(9)不同存儲結構下的線性表怎麼區別擴展閱讀:
線性表結構特點
1、均勻性
雖然不同數據表的數據元素可以是各種各樣的,但對於同一線性表的各數據元素必定具有相同的數據類型和長度。
2、有序性
各數據元素在線性表中的位置只取決於它們的序號,數據元素之前的相對位置是線性的,即存在唯一的「第一個「和「最後一個」的數據元素,除了第一個和最後一個外,其它元素前面均只有一個數據元素(直接前驅)和後面均只有一個數據元素(直接後繼)。
參考資料:搜狗網路-線性表
『拾』 線性表兩種 存儲結構各自的優缺點有哪些
線性表的鏈式存儲結構:
優點:
插入和刪除不需要移動插入時只需要對插入位置後的一個元素進行操作,不需要大量的移動元素。空間有效利用高。
缺點:
大量訪問操作時不如順序存儲結構,因為每次都需要從頭開始遍歷整個線性表直到找到相應的元素為止。
線性表的順序存儲結構:
優點:
可隨機存取表中任一元素。因為有下標可以操作可以快速的定位到指定位置的元素,但是不知道位置的話也需要順序遍歷。
缺點:
插入或刪除操作時,需大量移動元素。合適在很少進行插入和刪除運算的情況下。
(10)不同存儲結構下的線性表怎麼區別擴展閱讀:
線性表的特徵
集合中必存在唯一的一個「第一元素」。
集合中必存在唯一的一個 「最後元素」 。
除最後一個元素之外,均有唯一的後繼(後件)。
除第一個元素之外,均有唯一的前驅(前件)。
線性表的基本操作
MakeEmpty(L) 這是一個將L變為空表的方法。
Length(L) 返回表L的長度,即表中元素個數。
Get(L,i) 這是一個函數,函數值為L中位置i處的元素(1≤i≤n)。
Prior(L,i) 取i的前驅元素。
Next(L,i) 取i的後繼元素。
Locate(L,x) 這是一個函數,函數值為元素x在L中的位置。
Insert(L,i,x)在表L的位置i處插入元素x,將原占據位置i的元素及後面的元素都向後推一個位置。
Delete(L,p) 從表L中刪除位置p處的元素。
IsEmpty(L) 如果表L為空表(長度為0)則返回true,否則返回false。
Clear(L)清除所有元素。
Init(L)同第一個,初始化線性表為空。
Traverse(L)遍歷輸出所有元素。
Find(L,x)查找並返回元素。
Update(L,x)修改元素。
Sort(L)對所有元素重新按給定的條件排序。
strstr(string1,string2)用於字元數組的求string1中出現string2的首地址。
參考資料來源:網路-線性表