排序算法
1、冒泡排序算法
private static void bubbleSort ( int [ ] a) {
for ( int i = 0 ; i < a. length; i++ ) {
for ( int j = 0 ; j < a. length- 1 - i; j++ ) {
if ( a[ j] > a[ j+ 1 ] ) {
int temp= a[ j] ;
a[ j+ 1 ] = a[ j] ;
a[ j] = temp;
}
}
}
}
public void bubbleSort2 ( int arr[ ] ) {
boolean flag= true ;
while ( flag) {
flag = false ;
for ( int j = 1 ; j < arr. length; j++ ) {
if ( arr[ j- 1 ] > arr[ j] ) {
int temp= arr[ j- 1 ] ;
arr[ j- 1 ] = arr[ j] ;
arr[ j] = temp;
}
}
}
}
public void bubbleSort3 ( int arr[ ] ) {
int j , k ;
int flag= arr. length;
while ( flag> 0 ) {
k = flag;
flag = 0 ;
for ( j = 0 ; j < k; j++ ) {
if ( arr[ j] > arr[ j] ) {
int temp = arr[ j- 1 ] ;
arr[ j- 1 ] = arr[ j] ;
arr[ j] = temp;
flag = j;
}
}
}
}
2、选择排序
private static void selcetSearch ( int [ ] a) {
for ( int i = 0 ; i < a. length- 1 ; i++ ) {
for ( int j = i+ 1 ; j < a. length; j++ ) {
if ( a[ i] > a[ j] ) {
int temp= a[ i] ;
a[ i] = a[ j] ;
a[ j] = temp;
}
}
}
}