You are on page 1of 2

95 學年 上學期 金門技術學院 資管系 日四技 二年級 資料結構 期中考 出題者 : 陳鍾誠

學號 : 姓名 : 分數 :
1 選擇題 (10%)
( ) 請問下列何者為堆疊的特性 (1) 先進先出 (2) 後進後出 (3) 亂進亂出 (4) 後進先出
( ) 請問下列何者為佇列的特性 (1) 先進先出 (2) 先進後出 (3) 亂進亂出 (4) 後進先出
( ) 請問當元素個數固定時,何種結構之使用空間較節省 (1) 陣列 (2) 鍊結串列
( ) 請問當元素個數變動性很大時,使用何種結構較好 (1) 陣列 (2) 鍊結串列
( ) Java 程式 int a[]=new int[20] 中,若 a[5] 的記憶體位置為 100, 請問 a[10] 的記憶體位置為何 ? (1) 120 (2)
105 (3) 130 (4) 140 (註:一個整數佔 4 個位元組)

2 簡答題 (20%)
(1) 請問 Java 程式中宣告 int a[][] = new int[5][10] (3) 請寫出 (a + b) * (c + d) + e 的後置式表示法 ?
共佔多少位元組 (註:一個整數佔 4 個位元
組)

(4) 請寫出 a b * c d + + 的中置式表示法 ?


(2) 請寫出 a * b + c 的後置式表示法 ?

3 短程式

(1). (5%) 請寫一小段程式(不用有類別宣告與主 (2). (5%) 請寫一小段程式(不用有類別宣告與主程式),


程式),可以將 list 中的 “b” 字串元素改成 “x” 可以將 list 中 a 所在節點的鏈結欄位 link 指向 c 所在的
字串。 節點。

4 中程式
(1). (10%)請寫出一個函數 int zero_count(int a[]), (2) . (10%) 請寫出一個遞回函數 f,可以計算下列函數
該函數會計算陣列 a 中的 0 有多少個後傳回 f(0) = 1 f(1) = 2 f(2) = 3
f(n) = f(n-1)+f(n-2)+f(n-3) 當 n >= 4 時
95 學年 上學期 金門技術學院 資管系 日四技 二年級 資料結構 期中考 出題者 : 陳鍾誠
學號 : 姓名 : 分數 :

5 長程式
(1). (20%) 請利用陣列的方式,寫出一個堆疊物 (2) (20%) 請寫出鏈結串列的物件 Node,包含函數
件,包含 push 與 pop 兩個函數。(您可假定該陣 1. void insert After(Node n)
列最多可容納 10 個 Object 元素) 將 Node n 串到本節點 (this) 的後面
2. void print()
印出該串列。

You might also like