#include <iostream>
using namespace std;
//改进后的冒泡排序,没有交换则结束战斗!
int BubbleSort(int R[] , int n)
{
//int i, j;
int tmp;
int exchange;
for(int i = 0; i < n-1; ++i)
{
exchange = 0;
for(int j = n-1; j > i; --j)
{
if(R[j] < R[j-1])
{
tmp = R[j];
R[j] = R[j-1];
R[j-1] = tmp;
exchange = 1;
}
}
if(exchange == 0)
return 0;
}
}
//快速排序
void QuickSort(int R[],int s,int t)
{
int i,j;
int tmp;
i = s;
j = t;
if(s < t)
{
tmp = R[i];
while(i != j)
{
while(i < j && R[j] > tmp)
{
j--;
}
R[i] = R[j];
while(i < j && R[i] < tmp)
{
i++;
}
R[j] = R[i];
}
R[i] = tmp;
QuickSort(R, s, i-1);
QuickSort(R, i +1, t);
}
}
void main()
{
int a[5]= {3,2,4,5,6};
QuickSort(a,0,4);
for(int i=0;i<5;++i)
{
cout <<a[i]<<endl;
}
}
【面试题】冒泡排序&快速排序
最新推荐文章于 2024-03-14 21:16:41 发布