PTA 資料結構與演算法 堆疊

2021-09-22 21:06:27 字數 1918 閱讀 8148

1.棧底元素是不能刪除的元素。 (1分)

tf

2.對順序棧進行進棧、出棧操作不涉及元素的前、後移動問題。 (1分)

tf

3.若用data[1…m]表示順序棧的儲存空間,則對棧的進棧、出棧操作最多只能進行m次。 (1分)

tf

4.通過對堆疊s操作:push(s,1), push(s,2), pop(s), push(s,3), pop(s), pop(s)。輸出的序列為:123。 (2分)

tf

5.若乙個棧的輸入序列為,則不可能得到這樣的出棧序列。 (2分)

tf

6.順序棧中元素值的大小是有序的。 (1分)

tf

7.棧頂元素和棧底元素有可能是同乙個元素。 (1分)

tf

1.假設有5個整數以1、2、3、4、5的順序被壓入堆疊,且出棧順序為3、5、4、2、1,那麼為了獲得這樣的輸出,堆疊大小至少為: (2分)選項a

2b3c

4d52.有六個元素以6、5、4、3、2、1的順序進棧,問哪個不是合法的出棧序列? (2分)選項a

2 3 4 1 5 6

b3 4 6 5 2 1

c5 4 3 6 1 2

d4 5 3 1 2 6

3.若乙個棧的入棧序列為1、2、3、…、n,其輸出序列為p1​、p2、p3、…、pn。若p​1=n,則p​i為: (2分)選項a

ibn−ic

n−i+1

d不確定

4.令p代表入棧,o代表出棧。當利用堆疊求解字尾表示式1 2 3 + * 4 –時,堆疊操作序列是: (3分)選項a

pppoopoo

bppooppooppoo

cpppoopooppoo

***poopooppoopo

5.若採用帶頭、尾指標的單向鍊錶表示乙個堆疊,那麼該堆疊的棧頂指標top應該如何設定? (2分)選項a

將煉表頭設為top

b將鍊錶尾設為top

c隨便哪端作為top都可以

d煉表頭、尾都不適合作為top

6.利用大小為n的陣列(下標從0到n-1)儲存乙個棧時,假定棧從陣列另一頭開始且top==n表示棧空,則向這個棧插入乙個元素時,修改top指標應當執行: (2分)選項a

top=0

btop++

ctop- -

dtop不變

7.若棧採用順序儲存方式儲存,現兩棧共享空間v[m]:top[i]代表第i(i=1或2)個棧的棧頂;棧1的底在v[0],棧2的底在v[m-1],則棧滿的條件是: (2分)選項a

top[2]-top[1]==0

btop[1]+top[2]==m

ctop[1]==top[2]

dtop[1]+1==top[2]

8.設乙個棧的輸入序列是1、2、3、4、5,則下列序列中,是棧的合法輸出序列的是? (2分)選項a

3 2 1 5 4

b5 1 2 3 4

c4 5 1 3 2

d4 3 1 2 5

9.若乙個棧的入棧序列為1、2、3、…、n,輸出序列的第乙個元素是i,則第j個輸出元素是: (2分)選項a

i−j−1

bi−j

cj−i−1

d不確定

10.設乙個堆疊的入棧順序是1、2、3、4、5。若第乙個出棧的元素是4,則最後乙個出棧的元素必定是: (2分)選項a

1b3c

5d1或者5

11.表示式a*(b+c)-d的字尾表示式是: (2分)選項a

a b c + * d -

ba b c d * + -

ca b c * + d -

d- + * a b c d

資料結構與演算法 堆疊

定義 具有一定操作約束的線性表,只在一段做插入,刪除,先出 adt 型別名稱 堆疊 stack 資料物件集 乙個有0個或多個元素的有窮鍊錶 操作集 初始化空堆疊,判斷是否已滿,是否為空,插入和刪除 堆疊的順序儲存結構通常由乙個一維陣列和記錄棧頂元素位置的變數組成。define struct snod...

PTA 資料結構與演算法 佇列

1.在用陣列表示的迴圈佇列中,front值一定小於等於rear值。1分 tf 2.迴圈佇列執行出隊操作時會引起大量元素的移動。1分 tf 3.棧是插入和刪除只能在一端進行的線性表 佇列是插入在一端進行,刪除在另一端進行的線性表。1分 tf 4.n個元素進隊的順序和出隊的順序總是一致的。1分 tf 1...

PTA 資料結構與演算法 回溯

1.在4皇后問題中,x1,x2,x3,x4 對應4個皇后位置的列下標。在回溯剪枝過程中,狀態 1,4,2,會在 2,4,1,之前被檢查,並且它們對應的分支都沒有解。tf 2.西洋棋四皇后問題僅有 2 個不同的解。tf 1.給定收費公路重建問題的距離集d 首先可以確定的是 x1 0 和 x6 8。下列...