實現氣泡排序(BubbleSort)
阿新 • • 發佈:2019-01-25
描述
請根據自己的理解編寫氣泡排序演算法,陣列大小1000以內
輸入
第一行是n,表示陣列的大小
接著n行是陣列的n個元素
輸出
排序之後的結果
一個元素一行
樣例輸入
50
71 899 272 694 697 296 722 12 726 899 374 541 923 904 83 462 981 929 304 550 59 860 963 516 647 607 590 157 351 753 455 349 79 634 368 992 401 357 478 601 239 365 453 283 432 223 739 487 714 391
樣例輸出
12 59 71 79 83 157 223 239 272 283 296 304 349 351 357 365 368 374 391 401 432 453 455 462 478 487 516 541 550 590 601 607 634 647 694 697 714 722 726 739 753 860 899 899 904 923 929 963 981 992
原始碼
#include <iostream>
using namespace std;
int main()
{
int n, a[1000];
cin >> n;//輸入n個數
for (int i = 0; i < n; i++)
{
cin >> a[i];
}
//冒泡,不斷比較相鄰的兩個數,如果順序錯了,那麼就交換
for (int i =0; i < n; i++)
{
for (int j = 1; j < n-i; j++)
{
if (a[j-1] > a[j])
{
int temp = a[j];
a[j] = a[j-1];
a[j-1] = temp;
}
}
}
//依次輸出
for (int i = 0; i < n; i++)
{
cout << a[i] << endl;
}
return 0;
}