冒泡排序

void Mao(int arr[],int sz) {
    int i = 0; 
    //肯定冒泡排序的趟數
    for (i = 0; i < sz-1 ; i++) {
        int flag = 1;//假設這一趟要排序的數組已經有序
        int j = 0;
        for (j = 0; j < sz - 1 - i; j++) {
            if (arr[j] > arr[j + 1]) {
                int tmp = arr[j];
                arr[j] = arr[j + 1];
                arr[j + 1] = tmp;
                flag = 0;//本趟排序的數據其實不徹底有序
            }
        }
        if (flag == 1) {
            break;
        }
    }
}
int main() {
    int arr[] = { 10,9,8,7,6,5,4,3,2,1 };
    int i = 0;
    int sz = sizeof(arr) / sizeof(arr[0]);
    Mao(arr,sz);
    for (i = 0; i < sz; i++) {
        printf("%d", arr[i]);
    }
    return 0;
    }

冒泡排序

相關文章
相關標籤/搜索
本站公眾號
   歡迎關注本站公眾號,獲取更多信息