國立空中大學

台北學習指導中心

資料結構】科





國立空中大學八十七學年度下學期期中考試試題(正)

考試科目:資料結構

一、簡答題(30%,每題6分)

1.一個資料結構正式的定義包含那三部分

2.假設某演算法的執行布驟可用f(n)=3+6+9+12+...+3n來表示,請以漸
近式來表示其時間複雜度(time complexity)

3.請說明堆疊(stack)與佇列(queue)的異同

4.試任舉3項至目前為止學過的資料結構的名稱

5.請將下列以中序表示法顯示的運算式轉換成後序表示法
a/b-c+d*e-a*c

二、填充題(30%,每格5分)

請依漸近式表示法的大小順序排列以下的漸近式:
n 2 3
O(1),O(2 ),O(n ),O(nlogn),O(n),O(logn),O(n )
O(1)<(1)<(2)<(3)<(4)<(5)<(6)

三、問答題(40%,每題10分)

1.請說明時間複雜度(time complexity)與空間複雜度(space
complexity)的定義

2.何謂無限回歸(infinite regression),通常會造成甚麼結果?

3.請描述插入一個節點到鏈結串列中的程序

插入前 插入點
Node1 ↙ Node2
 →┌─┬─┐→┌─┬─┐→ ┌─┬─┐→
└─┴─┘ └─┴─┘ └─┴─┘
temp
┌─┬─┐
插入後 └─┴─┘
Node1 ↗ ↘ Node2
→ ┌─┬─┐ ┌─┬─┐→ ┌─┬─┐→
└─┴─┘ └─┴─┘ └─┴─┘

4.請改良下列用遞迴法計算N階乘的程式,並說明修改的理由:
read N;
while I<N do result:=result*I;
print N;


國立空中大學八十七學年度下學期期中考試試題(副)

考試科目:資料結構

一 簡答題(36%,每題6分)

1. 請說明時間複雜度(time complexity)與空間複雜度(space
complexity)的定義

2. 一個資料結構正式的定義包含那三部分

3. 何謂同位組合(Union),請從資料結構的觀點說明

4. 何謂轉置矩陣,可用那種資料結構來表示

5. 請說明堆疊(stack)與佇列(queue)的異同

6. 試任舉3項至目前為止學過的資料結構的名稱

二 問答題(64%)

1.(10%)假設某演算法的執行布驟可用f(n)=3+6+9+12+...+3n 來表示,請
以漸近式來表示其時間複雜度(time complexity)

2.(6%)何謂無限回歸(infinite regression),通常會造成甚麼結果?

3.(16%)請描述插入一個節點到鏈結串列中的程序
插入前 插入點
Node1 ↙ Node2
→ ┌─┬─┐→ ┌─┬─┐→ ┌─┬─┐→
└─┴─┘ └─┴─┘ └─┴─┘
temp
┌─┬─┐
插入後 └─┴─┘
Node1 ↗ ↘ Node2
→┌─┬─┐ ┌─┬─┐→ ┌─┬─┐→
└─┴─┘ └─┴─┘ └─┴─┘

4.(14%)請改良下列用遞迴法計算 N 階乘的程式,並說明修改的理由:
read N;
while I<N do result:=result*I;
print N;
n 2
5.(12%)請依漸近式表示的大小順序排列以下的漸近式:O(2 ), O(n ),
3
O(nlogn), O(n), O(logn), O(n )

6.(6%)請將下列以中序表示法顯示的運算式轉換成後序表示法
a/b-c+d*e-a*c


國立空中大學八十七學年度下學期期末考試試題(正)

科目:資料結構

請橫式書寫

一、簡答題(40%,每題8分)

1.請說明最大堆積(Max Heap)與最小堆積(Min Heap)的定義,並各舉
一實例

2.何謂雜湊函數,如何設計一個良好的雜湊函數?

3.課本中介紹了圖形結構(graph),這種結構和樹(tree)結構有何異
同?請就課文中所學的或自己的經驗舉兩個例子說明圖形結構的用途

4.試任舉8項至目前為止在課本上學過的資料結構的名稱

5.請計算選擇排序法的執行時間複雜度

二、問答題(60%,每題15分)

1.請用氣泡排序法的演算法將以下的陣列由小到大排列,並計算氣泡排序
法的執行時間複雜度
a(0) a(1) a(2) a(3) a(4) a(5) a(6)
36 67 53 11 7 87 45

2.何謂2-3樹?試說明其優點與特徵

3.期中考曾描述插入一個節點到下列鏈結串列中的程序
插入前 插入點
Node1 ↙ Node2
→ ┌─┬─┐→ ┌─┬─┐→ ┌─┬─┐→
└─┴─┘ └─┴─┘ └─┴─┘
temp
插入後 ┌─┬─┐
└─┴─┘
Node1 ↗ ↘ Node2
→┌─┬─┐ ┌─┬─┐→ ┌─┬─┐→
└─┴─┘ └─┴─┘ └─┴─┘

假如我們把上面這個鏈結串列看成是樹(tree),在的表示法上應做何
改變,再插入一個節點temp2後可能變成甚麼樣的結構?

4.請將下列的樹林改成二元樹,並分別做的中序,前序與後序追蹤

(圖略)


國立空中大學八十七學年度下學期期末考試試題(副)

考試科目:資料結構

一、簡答題(40%,每題8分)

1. (1) 請說明樹狀排序法的原理,並計算平均執行時間複雜度

(2) 請計算選擇排序法的執行時間複雜度

2. 請說明最大堆積(Max Heap)與最小堆積(Min Heap)的定義,並各
舉一實例

3. 何謂雜湊函數,如何設計一個良好的雜湊函數?

4. 課本中介紹了圖形結構(graph),這種結構和樹(tree)結構有何異
同?請就課文中所學的或自己的經驗舉兩個例子說明圖形結構的用途

5. 何謂2-3樹?試說明其優點與特徵

二、問答題(60%,每題15分)

1. 請稍微改變氣泡排序法的演算法將以下的陣列由大小排列,並計算氣
泡排序法的執行時間複雜度
a(0) a(1) a(2) a(3) a(4) a(5) a(6)
36 67 53 11 7 87 45

2. 試任舉5項至目前為止在課本上學過的資料結構的名稱

3. 期中考曾描述插入一個節點到下列鏈結串列中的程序
插入前 插入點
Node1 ↙ Node2
→ ┌─┬─┐→ ┌─┬─┐→ ┌─┬─┐→
└─┴─┘ └─┴─┘ └─┴─┘
temp
插入後 ┌─┬─┐
└─┴─┘
Node1 ↗ ↘ Node2
→┌─┬─┐ ┌─┬─┐→ ┌─┬─┐→
└─┴─┘ └─┴─┘ └─┴─┘
假如我們把上面這個鏈結串列看成是圖形結構(graph),在表示法
上應做何改變,再插入一個節點temp2後可能變成甚麼樣的結構?

   4. 請將下列的樹林改成二元樹,並分別做樹與樹林的中序,前序與後序
追蹤

(圖略)
.




Back
資料結構主畫面