冒泡排序的多种写法

一、

void BubbleSort(int[] array)
{
    int length = array.Length;
    for (int i = 0; i <= length - 1; i++)
    {
        for (int j = length - 1; j > i; j--)
        {
            if (array[j] < array[j - 1])
            {
                int temp = array[j];
                array[j] = array[j - 1];
                array[j - 1] = temp;
            }
        }
    }
}

二、

template <typename T>
void bubble_sort(T *array,const int size)
{
 if(NULL==array)
  throw;
 if(0>=size)
  return;
 int i=0;
 int j=0;
 T temp;
 for(;i<size-1;++i)
 {
  for(j=0;j<size-i-1;++j)
  {
   if(array[j]>array[j+1])
   {
 //   array[j]=array[j]+array[j+1]-(array[j+1]=array[j]);
    temp=array[j];
    array[j]=array[j+1];
    array[j+1]=temp;
   }
  }
 }
}


你可能感兴趣的:(排序,冒泡排序)