1樓:素水雲兒
一錯到底,無藥可救。
簡述棧和佇列的順序儲存結構和鏈式儲存結構的優缺點
2樓:今天上課吃點啥
順序棧--入棧操作受陣列上界的約束有可能發生棧上溢,且需要地址連續的儲存單元。
鏈棧--無須地址連續,便於多個棧共享儲存單元,且不存在棧滿上溢情況。
順序佇列--需地址連續且有假上溢現象(需改為迴圈佇列才可解決假上溢)鏈式佇列--特別適合於資料元素變動比較大的情況,且不存在佇列滿而產生的溢位問題。
鏈棧和順序棧兩種儲存結構有什麼不同?
3樓:網友
儲存結構不同:
鏈棧動態分配記憶體儲存資料,不浪費記憶體,儲存的資料不連續。
順序棧使用固定大小陣列儲存資料,資料量小時浪費記憶體,過多時出問題,儲存資料連續。
它們的具體區別如下:
順序棧的實現在於使用了陣列這個基本資料結構,陣列中的元素在記憶體中的儲存位置是連續的,且編譯器要求我們在編譯期就要確定陣列的大小,這樣對記憶體的使用效率並不高,一來無法避免因陣列空間用光而引起的溢位問題。在系統將記憶體分配給陣列後,則這些記憶體對於其他任務就不可用。而對於鏈棧而言,使用了連結串列來實現棧,連結串列中的元素儲存在不連續的地址,由於是動態申請記憶體,所以我們可以以非常小的記憶體空間開始,另外當某個項不使用時也可將記憶體返還給系統。
棧的儲存結構
4樓:匿名使用者
棧同順序表和連結串列一樣,棧也是用來儲存邏輯關係為 "一對一" 資料的線性儲存結構。
棧的具體實現。
棧是一種 "特殊" 的線性儲存結構,因此棧的具體實現有以下兩種方式:
順序棧:採用順序儲存結構可以模擬棧儲存資料的特點,從而實現棧儲存結構;
鏈棧:採用鏈式儲存結構實現棧結構;
棧儲存結構與之前所學的線性儲存結構有所差異,這緣於棧對資料 "存" 和 "取" 的過程有特殊的要求:
棧只能從表的一端存取資料,另一端是封閉的;
在棧中,無論是存資料還是取資料,都必須遵循"先進後出"的原則,即最先進棧的元素最後出棧。
通常,棧的開口端被稱為棧頂;相應地,封口端被稱為棧底。因此,棧頂元素指的就是距離棧頂最近的元素。
5樓:勤奮的曼曼
okay? 這個清楚則若虛而言, 那以往的經驗, 那去選擇, 不然的話是沒有辦法的。
棧的鏈式儲存結構是什麼?
6樓:北京理工大學出版社
若是棧中元素的數目變化範圍較大或不清楚棧元素的數目,就應該考慮使用鏈式儲存結構。人們將用鏈式儲存結構表示的棧稱作“鏈棧”。鏈棧通常用一個無頭結點的單連結串列表示。
由於棧的插入、刪除操作只能在一端進行,而對於單連結串列來說,在首端插入、刪除結點要比在尾端進行相對容易一些,所以將單連結串列的首端作為棧的頂端,即將單連結串列的頭指標作為棧頂指標。鏈棧如圖1所示。
圖1鏈棧的儲存示意。
棧的順序儲存和連結串列儲存的差異?
7樓:辛丹萱竹祥
順序儲存: 線性表。
線性表的順序儲存結構具備如下兩個基本特徵: 1、線性表中的所有元素所佔的儲存空間是連續的(即要求記憶體中可用儲存單元的地址必須是連續的)。 2、線性表中各資料元素在儲存空間中是按邏輯順序。
依次存放的。 即:線性表邏輯上相鄰、物理也相鄰(邏輯與。
物理統一:相鄰資料元素的存放地址也相鄰),則已知第一個元素首地址和每個元素所佔位元組數,則可求出任一個元素首地址。 優點: 1、
無須為表示結點間的邏輯關係而增加額外的儲存空間。
可以方便的隨機存取表中的任一結點。
儲存密度大(=1),儲存空間利用率高。 缺點: 1、
插入和刪除運算不方便,需移動大量元素。
由於要求佔用連續的儲存空間,儲存分配只能按最大儲存空間預先進行,致使儲存空間不能得到充分利用。
表的容量難以擴充。 連結串列。
儲存: 線性表的鏈式儲存:磨扒禪指用一組任意的儲存單元儲存線性表中的資料瞎塵元素。
線性表的鏈式儲存結構具備的基本特徵: 鏈式儲存時,相鄰資料元素可隨意存放,但所佔儲存空間分兩部分,一部分存放結點值,另一部分存放表示結點間關系的指標。 優點: 1、
插入、刪除操作很方便,可通過修改結點的指標實現,無須移動元素。
方便擴充儲存空間。
缺點: 1、
不能隨機存取元素。
儲存密度小(<1),儲存空間利用率低。 總結: 1、
順序表適宜於做查詢這樣的靜態操作;
連結串列宜於做插入、刪除這樣的動態操作。 2、若線性表的長度變化不大,且其主要操作是查詢,則採用順序表; 若線性表的長度變化較大,且其主此答要操作是插入、刪除操作,則採用連結串列。
鏈式儲存結構的介紹
8樓:手機使用者
鏈式儲存結構,又叫連結儲存結構。在計算機中用一組任意的儲存單元儲存線性表的資料元素(這組儲存單元可以是連續的,也可以是不連續的).
棧和佇列都是什麼結構,為什麼棧和佇列都屬於線性結構
佇列是先進先出 就像一條路,有一個入口和一個出口,先進去的就可以先出去。而棧就像一個箱子,後放的在上邊,所以後進先出。兩者的結構通常採用的兩種儲存結構是順序儲存結構和連結串列儲存結構。棧 用杯子裝棋子 佇列 貌似就和排隊一樣,資料結構裡的東西 線性結構。它們都是特殊的線性表。為什麼棧和佇列都屬於線性...
設有元素a b c d進棧,給出它們所有可能的出棧次序 解釋詳細點
先進棧的bai 元素,後出棧。出棧次序由進du棧次序決定,故共zhi有4x3x2x1 24種 dao abcd abdc acbd acdb adbc adcb bacd badc bcad bcda bdca bdac cabd cadb cbad cbda cdba cdab dabc dacb...
棧的輸入序列為123n,若輸出序列的元素是n,輸
b,棧是後進先出的線性表,先輸出第一個元素n,n n 1 1,依次遞推。輸出第i個元素a,即為a n i 1。選b,棧是一個罐子一樣的,東西先裝進去的只能後拿出來,n是最先拿出來了,也是說是全部裝進去了再拿出來,所以b 正確答案是 a不確定。樓上的別誤人子弟啊!若一個棧的輸入序列為1,2,3,n,輸...