線性表的定義
1樓:hr悅
線性表的定義是最基本、最簡單、也是最常用的一種資料結構。線性表(滲世寬linear list)是資料結構的一種,乙個線性表是n個具有相同特性的資料元素的有限序列。
線性表中資料元素之間的關係是一對一的關係,即除了第乙個和最後乙個資料元素之外,其它資料元素都是首叢亮尾相接的(注意,這句話只適用大部分線性表,而不是全部。
比如,迴圈連結串列邏輯層次上也是一種線性表(儲存層次上屬返睜於鏈式儲存,但是把最後乙個資料元素的尾指標指向了首位結點)。
線性表的介紹
2樓:君子哥
線性表是最基本、最簡單、也是最常用的一種資料結構。線性表中資料元素之間的關係是一對一的關係,即除了第乙個和最後乙個資料元素之外,其它資料元素都是首尾相接的(注意,這句話只適用大部分線性表,而不是全部。比如,迴圈連結串列邏輯層次上也是一種線性表(儲存層次上屬於鏈式儲存),但是把最後乙個資料元素的尾指標指向了哨位結點)。
我們說「線性」和「非線性」,只在邏輯層次上討論,而不考慮儲存層次,所以雙向連結串列和迴圈連結串列依舊是線性表。在資料結構邏輯層次上細分,線性表可分為一般線性表和受限線性表。一般線性表也就是我們通常所說的「線性表」,可以自由的刪除或新增結點。
受限線性表主要包括棧和佇列,受限表示對結點的操作受限制。線性表的邏輯結構簡單,便於實現和操作。因此,線性表這種資料結構在實際應用中是廣泛採用的一種資料結構。
怎麼在資料結構中定義線性表
3樓:康興有寶丁
棧(stack)是限定只能在表的一端進行插入和刪除操作的線性表。
佇列(queue)是限定只能配宴明在表的一端進行插入和在另一端進行刪除操作的線性表。
從"資料結構"的角度看,它們都是線性結構,即資料元素之間的關係相同。但它們是完祥巧全不同的資料型別。除了它們各自的基本操作集不同外,主要培告區別是對插入和刪除操作的"限定"。
棧和佇列是在程式設計中被廣泛使用的兩種線性資料結構,它們的特點在於基本操作的特殊性,棧必須按"後進先出"的規則進行操作,而佇列必須按"先進先出"的規則進行操作。和線性表相比,它們的插入和刪除操作受更多的約束和限定,故又稱為限定性的線性表結構。
4樓:董全衛壬
線性表有悶山樑兩唯鉛種,不知你要求那螞運種。
typedef
struct
elemtype*
elem;int
length;
intlistsize;
sqlist;//順序表,這個與陣列的區別不用我說了吧。
voidinitlist_sq
sqlist&
l)elemtype
list_init_size];;
初始化順序表。
然後sqlist
la;initlist_sq(la);就可以typedefstruct
lnode{int
data;struct
lnodenext;//單連結串列可以有效的利用主存的碎片,它的資料域不是連續的。
線性儲存結構就是順序儲存結構嗎 線性表是線性儲存結構嗎
不是,他們的關係可以如圖所示。線性表包括順序儲存結構和鏈式儲存結構。線性表的劃分是從資料的邏輯結構上進行的。線性指的是在資料的邏輯結構上是線性的。即在資料元素的非空有限集中 1 存在唯一的一個被稱作 第一個 的資料元素,2 存在唯一的一個被稱作 最後一個 的資料元素,3 除第一個外,集合中的每個資料...
線性表的邏輯結構是什麼?其所含節點的個數稱為什麼?
集合線性結構,樹形結構。所以線性表。是屬於邏輯結構中的線性結構。線性表的資料長度伍野是存放線性表的儲存空間的長度,儲存分配後這個量握橘辯一般是不變的 除非採用動態分配 線性表的長度是線性表中段缺資料元素 節點 的個數,隨著線性表的插入和刪除操作的進行,這個量是變化的。 物理結構只有順序儲存和隨機儲存...
急急急,設計演算法,將線性表中重複結點刪除,線性表用順序儲存結構儲存,謝謝
30分只給思路,不寫具體演算法了。這個事可以有兩種方式完成 1 先對錶排序,之後只一次遍歷表 其間將重複 與前個表項值相同的 元素剔除 2 不排序,直接對每個元素都遍歷一次全表,剔除重複元素。顯然方式1較好。按方式1進一步細說 1 線性表排序 此處不討論排序方式 要利用表本身的特點,排序只動指標 不...