编程实现选择排序
2017-08-06 00:00
190 查看
每次循环遍历最小元素,将其与a[i] 交换
/*选择排序*/
#include<stdio.h>
void selectsort(int *a,int n)
{
int i;
int j;
int temp = 0;
int flag = 0;
for (i=0; i<n-1; i++)
{
temp = a[i];
flag = i;
for (j=i+1; j<n; j++)
{
if (a[j]<temp)
{
temp = a[j];
flag = j;
}
}
if (flag!=i)
{
a[flag] = a[i];
a[i] = temp;
}
}
}
int main()
{
int i = 0;
int a[] = {9,7,3,1,6,5,4,8,2,0};
int len = sizeof(a)/sizeof(a[0]);
selectsort(a,len);
for (i=0; i<len; i++)
{
printf("%d",a[i]);
}
printf("\n");
return 0;
}
/*选择排序*/
#include<stdio.h>
void selectsort(int *a,int n)
{
int i;
int j;
int temp = 0;
int flag = 0;
for (i=0; i<n-1; i++)
{
temp = a[i];
flag = i;
for (j=i+1; j<n; j++)
{
if (a[j]<temp)
{
temp = a[j];
flag = j;
}
}
if (flag!=i)
{
a[flag] = a[i];
a[i] = temp;
}
}
}
int main()
{
int i = 0;
int a[] = {9,7,3,1,6,5,4,8,2,0};
int len = sizeof(a)/sizeof(a[0]);
selectsort(a,len);
for (i=0; i<len; i++)
{
printf("%d",a[i]);
}
printf("\n");
return 0;
}
相关文章推荐
- 编程实现直接插入排序、希尔排序、冒泡排序、快速排序、选择排序
- 经典编程问题之:选择排序、冒泡排序、汉诺塔游戏,均用js代码实现
- 菜鸟学编程之三:三种最基本排序算法的实现(冒泡排序、选择排序、直接插入排序)
- JQuery实现带排序功能的权限选择实例
- 编程珠玑 第十一章 第 六题 选择排序和希尔排序
- JQuery实现带排序功能的权限选择实例
- 用JAVA代码实现选择排序
- 【数据结构】Java实现各类经典排序算法——选择排序、冒泡排序
- 选择排序的C++实现
- java实现选择排序
- 简单排序Java实现(一):冒泡排序,选择排序,插入排序(原理及实现)
- c# 编程 简单实现11个数中选择不重复出现的5个数。
- 冒泡以及直接选择排序的JAVA实现
- 九大排序算法及其实现- 插入.冒泡.选择.归并.快速.堆排序.计数.基数.桶排序.堆排序
- 程序员必知的8大排序(二)-------简单选择排序,堆排序(java实现)
- VC++实现选择排序算法简单示例
- java实现选择排序
- Javascript实现三种排序:冒泡排序、选择排序、插入排序
- java选择排序、冒泡排序和插入排序实现
- 程序员必知的8大排序(二)-------简单选择排序,堆排序(java实现)