Eric 手中有六張樸克牌,點數分別為「3, 8, 4, 2, 5, 7」,如果用氣泡排序法「遞減」排序, 每完成一回合後,其點數排列由左而右分別是多少呢?
以陣列存放3, 8, 4, 2, 5, 7
輸出每一回合的排序結果
8 4 3 5 7 2 8 4 5 7 3 2 8 5 7 4 3 2 8 7 5 4 3 2 8 7 5 4 3 2
#include <iostream>
using namespace std;
int main(){
int a[6] = {3, 8, 4, 2, 5, 7};
int i, j, tmp, k;
for(i=1; i<6; i++){
for(j=0; j<6-i; j++){
if(a[j] < a[j+1]){
tmp = a[j];
a[j] = a[j+1];
a[j+1] = tmp;
}
}
for (k=0;k<6;k++)
cout << a[k] <<" ";
cout <<endl;
}
return 0;
}
a = [3, 8, 4, 2, 5, 7]
for i in range(1, 6):
for j in range(6-i):
if a[j] < a[j+1]:
tmp = a[j]
a[j] = a[j+1]
a[j+1] = tmp
for k in range(6):
print(a[k], end=' ')
print()
編號 | 身分 | 題目 | 主題 | 人氣 | 發表日期 |
沒有發現任何「解題報告」 |