📄 selects.cpp
字号:
/*算法思想简单描述:
在要排序的一组数中,选出最小的一个数与第一个位置的数交换;
然后在剩下的数当中再找最小的与第二个位置的数交换,如此循环
到倒数第二个数和最后一个数比较为止。*/
#include<iostream.h>//选择排序
#define MAX 4
void select_sort(int *x,int n);
int main()
{
int *p,i,n,a[MAX];
n=MAX;
p=a;
cout<<"Input "<<n<<" number for sorting :"<<endl;
for(i=0;i<MAX;i++)
{
cin>>a[i];
}
cout<<endl;
select_sort(p,MAX);
cout<<"After select_sort:"<<endl;
for(i=0;i<MAX;i++)
{
cout<<a[i]<<" ";
}
cout<<endl;
return 0;
}
void select_sort(int a[],int n)//选择排序
{
int i,j,min;
for(i=0;i<n-1;i++) //要选择的次数:n-1次
{
min=i; //假设当前下标为i的数最小,比较后再调整
for(j=i+1;j<n;j++)//循环找出最小的数的下标是哪个
{
if (a[j]<a[min])
{
min=j; //如果后面的数比前面的小,则记下它的下标
}
}
if(min!=i) //如果min在循环中改变了,就需要交换数据
{
int temp;
temp=a[i];
a[i]=a[min];
a[min]=temp;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -