C++ソートアルゴリズムのバブルアルゴリズム

1231 ワード

1.発泡アルゴリズム
思想:最初の数から、隣接する2つの数を比較し、小さいものを前にします.
効果:最初の比較で、最大を最後の位置に移動します.2回目は,次数の大きいものを最後から2番目の位置に移動し,このようにN−1サイクルを行う必要がある.
 
void bubble_sort(int a[],int n)
{
    for(int i=0;ia[j+1])     //if(*(a+j)>*(a+j+1))
            {                   //{ 
                int t=a[j];     //        int *p=a+j;
                a[j]=a[j+1];    //        a+j=a+j+1;
                a[j+1]=t;       //        a+j+1=p;  ,a     ,    
            }                   //}
}

, , , 。

void bubble_sort(int a[], int n)
{
	for (int i = 0; i *(a + j + 1))
			{
				int t = *(a + j);
				*(a + j) = *(a + j + 1);
				*(a + j + 1) = t;
			}
			
}
: , i , n-i , n(n-1)/2
: ,
: , 3n(n-1)/2
,O(n2)