?? selects.cpp
字號:
/*算法思想簡單描述:
在要排序的一組數(shù)中,選出最小的一個數(shù)與第一個位置的數(shù)交換;
然后在剩下的數(shù)當中再找最小的與第二個位置的數(shù)交換,如此循環(huán)
到倒數(shù)第二個數(shù)和最后一個數(shù)比較為止。*/
#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++) //要選擇的次數(shù):n-1次
{
min=i; //假設當前下標為i的數(shù)最小,比較后再調(diào)整
for(j=i+1;j<n;j++)//循環(huán)找出最小的數(shù)的下標是哪個
{
if (a[j]<a[min])
{
min=j; //如果后面的數(shù)比前面的小,則記下它的下標
}
}
if(min!=i) //如果min在循環(huán)中改變了,就需要交換數(shù)據(jù)
{
int temp;
temp=a[i];
a[i]=a[min];
a[min]=temp;
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -