📄 arrange.h
字号:
#include<iostream.h>
void selectSort(int a[],int l,int r);
void quicksort(int a[],int left,int right)//快速排序,把输入的数分组
{
if(right-left+1<=10) //如果组中数据个数小于或者等于10
{
for(int i=0;i<=right-left;i++)//,就把该组数据输出,
cout<<a[left+i]<<" ";
cout<<endl;
selectSort(a,left,right); //然后用选择排序法把该组排好。
return;
}
int pivot,l,r,temp;
l=left;
r=right;
pivot=a[(left+right)/2];
while(l<r)
{
while(a[l]<pivot) ++l;
while(a[r]>pivot) --r;
if(l>=r) break;
temp=a[l];
a[l]=a[r];
a[r]=temp;
++l;
--r;
}
if(l==r) l++;
if(left<r) quicksort(a,left,l-1);
if(l<right) quicksort(a,r+1,right);
}
void selectSort(int a[],int l,int r)//选择排序法
{
int min=0,term;
for(int i=l;i<=r;i++)
{
min=i;
for(int j=i+1;j<=r;j++)
if(a[j]<a[min]) min=j;
if(a[min]<a[i])
{
term=a[i];
a[i]=a[min];
a[min]=term;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -