#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[] = ...{10, 7, 8, 9, 2, 4, 3, 6, 5, 1};
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;
}
#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[] = ...{10, 7, 8, 9, 2, 4, 3, 6, 5, 1};
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;
}