//冒泡排序
#include<iostream>
using namespace std;
void print(int arr[], int n)
{
for(int j= 0; j<n; j++)
{
cout<<arr[j] <<" ";
}
cout<<endl;
}
void BubbleSort(int arr[], int n)
{
for (int i = 0; i < n - 1; i++)
{
for (int j = 0; j < n - i - 1; j++)
{
if (arr[j] > arr[j + 1])
{
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
int main()
{
int s[10] = {8,1,9,7,2,4,5,6,10,3};
cout<<"初始序列:";
print(s,10);
BubbleSort(s,10);
cout<<"排序结果:";
print(s,10);
system("pause");
}
//快速排序
#include <iostream>
using namespace std;
//快速排序
//数组打印
void P(int a[],int n)
{
for(int i=0; i<n; i++)
cout<<a[i]<<" ";
cout<<endl;
}
int partition1(int arr[], int L, int R) {
int num = arr[L];
while(L < R) {
while(L < R && arr[R] > num)
{
R--;
}
arr[L] = arr[R];
while(L < R && arr[L] <=num)
{
L++;
}
arr[R] = arr[L];
}
arr[L] = num;
return L;
}
int quickSort(int arr[], int L, int R)
{
if(L < R)
{
int less = partition1(arr, L, R);
quickSort(arr, L ,less-1);
quickSort(arr, less + 1, R);
}
}
int main()
{
int a[]= {72,6,57,88,60,42,83,73,48,85};
//int a[]= {10,9,8,7,6,5,4,3,2,1};
P(a,10);
quickSort(a,0,9);//注意最后一个参数是n-1
P(a,10);
return 0;
}