冒泡排序

来源:互联网 发布:tps商城软件下载 编辑:程序博客网 时间:2024/05/19 02:17

 

#include <iostream>
#include 
<limits>
using namespace std;

template
<class T>
void Swap(T& a, T& b)
{
     
//两数交换 
     T temp = a; 
     a 
= b; 
     b 
= temp;
}


//一次冒泡
template <class T>
void Bubble(T a[], int n)
{
     
//把数组a[0:n-1]中最大的元素通过冒泡移动右边
     for(int i = 0; i < n-1++i)
        
if(a[i] > a[i+1])
           Swap(a[i], a[i
+1]);
}


//冒泡排序
template <class T>
void BubbleSort(T a[], int n)
{
     
//对数组a[0:n-1]中的n个元素进行冒泡排序
     for(int i = n; i > 1--i)
         Bubble(a, i);
}
 

int main()
{
   
int array[] = {10789243651};
   BubbleSort(array, 
sizeof(array)/sizeof(*array));
   
for (int i = 0; i <= sizeof(array)/sizeof(*array)-1++i)
      cout
<<array[i]<< ' ';
   cout 
<< endl; 
   cin.clear();
   cin.ignore(numeric_limits
<streamsize>::max(),' ');
   cin.
get();
   
return 0;
}

原创粉丝点击