C言語並べ替えアルゴリズムの泡出し順序の実現方法【改良版】


本論文の例は、C言語並べ替えアルゴリズムの発泡体順序付けの実現方法を説明する。皆さんに参考にしてあげます。具体的には以下の通りです。
泡の並べ替えと改善された泡の並べ替え

/*-------------------------------------------------------------------------------------------
Bubble_sort.h
    :       O(N^2)
       :        O(N^2)
                             ,       
         flag,    for        ,        ,         。
-------------------------------------------------------------------------------------------*/
#ifndef BUBBLE_SORT_H
#define BUBBLE_SORT_H
#include "typedef.h"
#include "swap.h"
//    
void Bubble_sort(T *a, int n)
{
  for(int i=n-1; i != 0; --i)
    for(int j=0; j != i; ++j)
      if(a[j+1] < a[j]) swap(a[j+1],a[j]);
}
//       
void Improved_Bubble_sort(T *a, int n)
{
  for(int i=n-1; i != 0; --i)
  {
    bool flag = true;
    for(int j=0; j != i; ++j) //           ,      
      if(a[j+1] < a[j]) { swap(a[j+1],a[j]); flag = false; }
    if(flag == true) break;
  }
}
#endif

ここで述べたように、皆さんのC言語プログラムの設計に役に立ちます。