c++学習ノート(6)選択ソートとバブルソート
840 ワード
消費を含む:
ソートを選択:
ソートを選択:
// O(n^2) // , ,
void select_sort(int a[], int n) //
{
int i, j, k;
for( i = 0; i < n - 1; i++ )
{
j = i;
for( k = i + 1; k < n; k++ )
if(a[k] < a[j]) j = k;
if(j != i)
{
int temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
}
:
// // , ,
// : O(n^2)
void bubble_sort(int a[], int n)
{
int i, j;
for( i = n - 1, change = TRUE; i > 1 && change; i-- ) //
{
change = FALSE;
for( j = 0; j < i; j++ )
if( a[j] > a[j + 1])
{
int temp = a[j + 1];
a[j + 1] = a[j];
a[j] = temp;
change = TRUE;
}
}
}