您的位置:首页 > 其它

选择排序与冒泡排序

2010-09-07 00:17 134 查看
//交换两个数的值
#define swap(a,b){/
a=a^b;/
b=a^b;/
a=a^b;/
}
//选择排序
void selectionSort(int *A,int n){
int i=0;
int min=0;
int j=0;
for (i=0;i<n-1;i++)
{
min=i;
for (j=i+1;j<=n-1;j++)
{
if (*(A+j)<A[min])
{
min=j;
}
}
swap(*(A+i),*(A+min));
}
}
//冒泡排序
void bubbleSort(int *A,int n){
int i=0;
int j=0;
for (i=0;i<n-1;i++)
{
for (j=0;j<n-1-i;j++)
{
if(*(A+j+1)<*(A+j)){
swap(*(A+j),*(A+j+1));
}
}
}
}
//打印数组
void print(int *A,int n){
int i=0;
for(i=0;i<n;i++){
printf("%d/t",*(A+i));
}
printf("/n");
}
int main(int argc, char* argv[])
{
int A[]={3,5,2,8,4,9,8,1};
print(A,sizeof(A)/sizeof(A[0]));
//selectionSort(A,sizeof(A)/sizeof(A[0]));
bubbleSort(A,sizeof(A)/sizeof(A[0]));
print(A,sizeof(A)/sizeof(A[0]));
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ini