資料結構 氣泡排序

2021-09-26 05:57:42 字數 1045 閱讀 1788

給定n個(長整型範圍內的)整數,要求輸出從小到大排序後的結果。

本題旨在測試各種不同的排序演算法在各種資料情況下的表現。各組測試資料特點如下:

資料1:只有1個元素;

資料2:11個不相同的整數,測試基本正確性;

資料3:103個隨機整數;

資料4:104個隨機整數;

資料5:105個隨機整數;

資料6:105個順序整數;

資料7:105個逆序整數;

資料8:105個基本有序的整數;

資料9:105個隨機正整數,每個數字不超過1000。

輸入格式:

輸入第一行給出正整數n(≤10^5​​ ),隨後一行給出n個(長整型範圍內的)整數,其間以空格分隔。

輸出格式:

在一行中輸出從小到大排序後的結果,數字間以1個空格分隔,行末不得有多餘空格。

輸入樣例:

114 981 10 -17 0 -20 29 50 8 43 -5

輸出樣例:

-20 -17 -5 0 4 8 10 29 43 50 981

#include#define maxsize 100000

int a[maxsize];

using namespace std;

void getdata(int a, int n)

}void swap(int* val1, int* val2)

void disparr(int a, int n)

}void bubblesort(int a, int n)

} if (flag_isordered == 1) break;//第一次迴圈就進行判斷是否有序,有序就直接跳出 }}

資料結構 氣泡排序

起泡排序的過程很簡單。首先將第乙個記錄的關鍵字和第二個記錄的關鍵字進行比較,若為逆序,則將兩個記錄交換之,然後比較第二個記錄和第三個記錄的關鍵字。依次類推,直至第n 1個記錄和第n個記錄的關鍵字進行比較為止。上述過程稱作第一趟起泡排序,其結果使得關鍵字最大的記錄被安置到最後乙個記錄的位置上。然後進行...

資料結構 氣泡排序

氣泡排序演算法的基本思想是 假設待排序表長為n,從後往前 或從前往後 兩兩比較相鄰元素的值,若為逆序 即a i 1 a i 則交換它們,直到序列比較完。我們稱它為一趟冒泡,如果將最小的元素交換到待排序序列的第乙個位置 關鍵字小的元素往上 漂浮 這就是氣泡排序名字的由來 下一趟冒泡時,前一趟確定的最小...

資料結構 氣泡排序

目標效果 原始碼 include void print out int a,int n void bubble sort int a,int n int main printf 起泡排序 n printf 排序前 n printresult a,10 排序方法 bubblesort a,10 pri...