資料結構 第三章作業 棧與佇列作業

2021-09-25 21:43:58 字數 2014 閱讀 4541

1. 經過以下棧運算後,x的值是(    )。

initstack(s);  push(s,'a');  push(s,'b');

pop(s,x);  gettop(s,x);

a             b. b            c. 1           d. 0

2.迴圈佇列儲存在陣列a[0..m]中,則入隊時的操作為(     )。

a.rear=rear+1          

b.  rear=(rear+1) mod(m-1)

c. rear=(rear+1)mod m     

d. rear=(rear+1) mod(m+1)

3. 棧和佇列的共同點是(      )。

a.都是先進先出                           b.都是先進後出

c.只允許在端點處插入和刪除元素           d.沒有共同點3

4. 若用乙個大小為6的陣列來實現迴圈佇列,且當 rear 和 front 的值分別為 0 和 3。當從佇列中刪除乙個元素,再插入兩個元素後,rear 和 front 的值分別為:(      )。

a.1 和 5                b.2 和 4         

c.4 和 2                d.5 和 1

5. 程式填順序迴圈佇列的型別定義如下:

typedef int et;

typedef structqueue;

queue    q;

佇列 q 是否「滿」的條件判斷為(       )。  

a.(q.front+1)==q.rear                

b.q.front==(q.rear+1)

c.q.front=(q.rear+1)% q.size            

d.(q.front+1) % q.size=(q.rear+1)% q.size

6. 若進棧序列為1,2,3,4,進棧過程中可以出棧,則(      )不可能是乙個出棧序列。

a.3,4,2,1                  b.2,4,3,1 

c.1,4,2,3                  d.3,2,1,4

7. 向順序儲存的迴圈佇列 q 中插入新元素的過程分為三步: (      )。

a.進行佇列是否空的判斷,存入新元素,移動隊尾指標

b.進行佇列是否滿的判斷,移動隊尾指標,存入新元素

c.進行佇列是否空的判斷,移動隊尾指標,存入新元素

d.進行佇列是否滿的判斷,存入新元素,移動隊尾指標

8. 關於棧和佇列,(       )說法不妥。

a.  棧是後進先出表                  b.  佇列是先進先出表

c.  遞迴函式在執行時用到棧          d.  佇列非常適用於表示式求值的算符優先法

9. 若用陣列s[0..m]作為兩個棧s1和s2的共同儲存結構,對任何乙個棧,只有當s全滿時才不能作入棧操作。為這兩個棧分配空間的最佳方案是(      )。

a.s1的棧底位置為0,s2的棧底位置為m

b.s1的棧底位置為0,s2的棧底位置為m/2

c.s1的棧底位置為1,s2的棧底位置為m

d.s1的棧底位置為1,s2的棧底位置為m/2

1.下面的演算法是將乙個整數e壓入堆疊s,請在空格處填上適當的語句實現該操作。

typedef structsqstack;

int push(sqstack s,int e)

s.top=      ; 

s.stacksize=     ;  

}  ;    

return 1;

}2. 在表示式:6+5+3*7/(4+9/3-2)求值過程中,處理到2時刻,運算子棧的狀態為:(4分),運算元棧的內容為(4分)。

3. 遞呼叫時,處理引數及返回位址,要用一種稱為的資料結構。

4. 設迴圈佇列中陣列的下標範圍是1-n,其頭尾指標分別為f和r,則其元素個數為。

答案連線鏈結

資料結構 第三章 棧與佇列

3.1 棧 3.1.1 抽象資料型別棧的定義 棧是限定僅在表尾進行插入或刪除操作的線性表。因此,對棧來說,表尾端有其特殊含義,稱為棧頂。相反地,表頭端稱為棧底。棧是後進先出 lifo 的線性表。基本操作 top 返回棧頂元素 pop 彈出棧頂元素 push a 將元素a壓入棧 empty 判斷是否為...

資料結構 第三章 棧與佇列

定義 限定僅在表尾進行插入和刪除操作的線性表。即後進先出的線性表 last in first out 表尾即棧頂top,表頭即棧低bottom。儲存方式 順序棧 鏈棧 順序棧 一組位址連續的儲存單元,一次存放自棧低到棧頂的資料元素。結構 兩個指標top,base,乙個int size描述棧的大小 空...

第三章作業1 棧

1 1 通過對堆疊s操作 push s,1 push s,2 pop s push s,3 pop s pop s 輸出的序列為 123。2分 f 應是231 1 2若乙個棧的輸入序列為1,2,3,n,輸出序列的第乙個元素是i,則第j個輸出元素是j i 1。2分 f 解析 一串資料依次通過乙個棧,並...