#include<iostream>
using namespace std;
/*
* 冒泡排序思路:
* 1. 進行n-1輪冒泡
* 2. 每一輪冒泡排序,通過相鄰元素比較和交換將排序後的最後一個元素歸位
* */
int bubbleSort(int a[], int n){
int count = 0;
for (int i = 0; i < n-1; i++){
for (int j = 0; j < n-i-1; j++){
if (a[j] > a[j+1]){
swap(a[j], a[j+1]);
count++;
}
}
}
return count;
}
int main(){
int n, count;
int a[100];
cin>>n;
for (int i = 0; i < n; i++){
cin>>a[i];
}
count = bubbleSort(a, n);
for (int i = 0; i < n; i++){
if (i != n-1){
cout<<a[i]<<" ";
}else{
cout<<a[i]<<endl;
}
}
cout<<count<<endl;
return 0;
}
ALDS1_2_B:SelectionSort
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.