1、从小到大冒泡排序
void BubbleSort(int _array[], int num){
for( int i = num-1; i > 0; i-- ){
int flag = 1;
for( int j = 0; j < i; j++ ){
if(_array[j] > _array[j+1]){ //不同点
flag = 0;
int tmp = _array[j];
_array[j] = _array[j+1];
_array[j+1] = tmp;
}
}
if(flag == 1){
break;
}
}
}
2、从大到小冒泡排序
void BubbleSort(int _array[], int num){
for( int i = num-1; i > 0; i-- ){
int flag = 1;
for( int j = 0; j < i; j++ ){
if(_array[j] < _array[j+1]){ //不同点
flag = 0;
int tmp = _array[j];
_array[j] = _array[j+1];
_array[j+1] = tmp;
}
}
if(flag == 1){
break;
}
}
}
注:冒泡排序的关键是设置flag,有flag比不设置flag效率高。