int nums[ 10 ] = {
4 , 5 , 2 , 10 , 7 , 1 , 8 , 3 , 6 , 9 } ;
int length = sizeof ( nums) / sizeof ( nums[ 0 ] ) ;
bubbleSort ( nums, length) ;
for ( int i = 0 ; i < length; i++ ) {
printf ( "%d " , nums[ i] ) ;
}
printf ( "\n" ) ;
1. 冒泡排序
void bubbleSort ( int arr[ ] , int length) {
for ( int i = 0 ; i < length - 1 ; i++ ) {
for ( int j = 0 ; j < length - 1 - i; j++ ) {
if ( arr[ j] > arr[ j + 1 ] ) {
int temp = arr[ j] ;
arr[ j] = arr[ j + 1 ] ;
arr[ j + 1 ] = temp;
}
}
}
}
2. 选择排序
void selectSort ( int arr[ ] , int length) {
int minIndex = 0 ;
for ( int i = 0 ; i < length - 1 ; i++ ) {
minIndex = i;
for ( int j = i + 1 ; j < length; j++ ) {
if ( arr[ minIndex] > arr[ j] ) {
minIndex = j;
}
}
if ( i != minIndex) {
int temp = arr[ i] ;
arr[ i] = arr[ minIndex] ;
arr[ minIndex] = temp;
}
}