冒泡排序

//冒泡排序
    
//int b[5] = {15,18,30,27,7};
    
//第一趟排序比較四次,排序之後 15,18,27,7,30
//    for (int j = 0; j < 4; j++) {
//        if (b[j] > b[j + 1]) {
            
//交換兩個元素的值
//            
//         int m= b[j + 1] ;
//            b[j + 1] = b[j];
//            b[j] = m;
//            
//        }
//    }
    
//第二趟排序 15 18 7 27 30
//    for ( int j = 0; j < 3; j++) {
//        if (b[j] > b[j + 1]) {
//            int m= b[j + 1] ;
//            b[j + 1] = b[j];
//            b[j] = m;
//        }
//    }
    
//第三趟排序 15 7 18 27  30
//    for (int j = 0; j < 2; j++) {
//        if (b[j] > b[j + 1]) {
//            int m= b[j + 1] ;
//            b[j + 1] = b[j];.
//            b[j] = m;
//        }
//    }
    
//第四趟排序 7 15 18 27 30
//    for (int j = 0; j < 1; j++) {
//        if (b[j] > b[j + 1]) {
//            int m = b[j + 1];
//            b[j + 1] = b[j];
//            b[j] = m;
//        }
//    }
//    for (int j = 0; j < 5; j++) {
//        printf("%d ",b[j]);
//    }
/冒泡排序採用雙層for循環
    
//外層循環決定比較趟數
    
//內層循環決定每一趟比較的次數
    
//最外層 -1 可以不減,-1的目的是提高程序的執行效率
    
//內層減1必須要減,1的目的是爲了防止比較的時候超出數組的範圍
    
//內層-1可以不減,作用是縮小無序區的範圍,提高程序執行的效率
//    for (int i = 0; i < 5(元素個數) - 1; i++) {
//        for (int j = 0; j < 5 - 1 - i; j++) {
//                    if (b[j] > b[j + 1]) {
//            //交換兩個元素的值
//            
//                     int m= b[j + 1] ;
//                        b[j + 1] = b[j];
//                        b[j] = m;
//            
//                    }
//                }
//
//    }
 
//   for (int j = 0; j < 5; j++) {
//                printf("%d ",b[j]);
//            }
    
//隨機產生10[20,40]的數,並對10個數從小到大排序
//    int b[10] = {};
//    for (int i = 0; i < 10; i++) {
//        b[i] = arc4random() % 21 + 20;
//        printf("%d ",b[i]);
//    }
//    for (int i = 0; i < 10 - 1; i++) {
//        for (int j = 0; j < 10 - 1 - i; j++) {
//            if (b[j] > b[j + 1]) {
//                //交換兩個元素的值
//                
//                int m= b[j + 1] ;
//                b[j + 1] = b[j];
//                b[j] = m;
//                
//            }
//        }
//        
//    }
//    printf("\n");
//    for (int j = 0; j < 10; j++) {
//        printf("%d ",b[j]);
//    }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章