免費開始練習
moea_joint_essay 106年 [儀電] 計算機概論、自動控制

第 一 題

📖 題組:
假設有 8 筆資料要排列分別為 35、60、92、43、15、97、52、37,請以氣泡浮昇排序法 (Bubble sort)將資料由小到大排序,並回答下列問題:(25 分) void BubbleSort(int n) { int i , j , t; Boolean exchanged=true; For(i=n-1;exchanged && i>﹦1;i--) { (1)請寫出本處之程式碼 { } } } (2)請寫出本處之程式碼
📝 此題為申論題,共 2 小題

小題 (一)

請依序撰寫下列未完成(位於空白處程式碼)之氣泡浮昇排序(Bubble sort)的演算法?
(15 分)
void BubbleSort(int n)
{
int i , j , t;
Boolean exchanged=true;
For(i=n-1;exchanged && i>﹦1;i--)
{
(1)請寫出本處之程式碼
{
}
}
}
(2)請寫出本處之程式碼

思路引導 VIP

回想改良版 Bubble Sort 的實作細節。外層迴圈控制回合,內層迴圈進行相鄰元素比較。如果有交換發生,exchanged 設為 true,否則提早結束迴圈。

🤖
AI 詳解
AI 專屬家教

在改良版的氣泡排序中,外層迴圈控制回合,內層迴圈進行比較與交換。每次進入外層迴圈時,應先將 exchanged 設為 false,如果在內層迴圈有發生交換,再將其設為 true。 (1) 處的程式碼應為內層迴圈及其內的比較與交換邏輯: exchanged = false;

小題 (二)

將排序過程中每一回合(interation)內容的變化情形寫出?(10 分)

思路引導 VIP

初始陣列: [35, 60, 92, 43, 15, 97, 52, 37]。由左至右相鄰兩兩比較,若左>右則交換。詳細寫出每一回合結束後的陣列狀態。

🤖
AI 詳解
AI 專屬家教

初始資料:[35, 60, 92, 43, 15, 97, 52, 37] 第一回合:(最大值97浮到最右)

  • 35與60不換

🏷️ 相關主題

TCP/IP協定架構與網路位址規劃技術
查看更多「[儀電] 計算機概論、自動控制」的主題分類考古題