资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

编程开发中如何实现选择排序

这篇文章主要介绍编程开发中如何实现选择排序,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

创新互联主要从事成都做网站、网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务巴彦淖尔,10多年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:13518219792

遍历一次数据找到最小的标记起来,遍历结束后把数据放到相应位置

void SelectSort(int *a, int length)

{

if (a == NULL || length <= 0)

{

return;

}

for (int i = 0; i < length; i++)

{

int j = i;

int min = a[i];

int index = i;

while (j < length)

{

if (a[j] < min)

{

min = a[j];

index = j;

}

//if (a[j] < a[i])

//{

//int tmp = a[i];

//a[i] = a[j];

//a[j] = tmp;

//}

++j;

}

a[index] = a[i];

a[i] = min;

}

}

在一次遍历数据的时候把最大的和最小的数据标记起来在一次遍历后把最小大数据放到相应位置,并防止最大和最小的交换导致出错。

void SelectSort(int *a, int length)

{

if (a == NULL || length <= 0)

{

return;

}

int size = length - 1;

for (int i = 0; i <= size; i++,size--)

{

int min = a[i];

int max = a[size];

int minindex = i;

int maxindex = size;

int j = i;

while (j<= size)

{

if (a[j] < min)

{

min = a[j];

minindex = j;

}

if (a[j]>max)

{

max = a[j];

maxindex = j;

}

++j;

}

if (maxindex == i && minindex == size)

{

a[i] = min;

a[size] = max;

}

else

{

a[minindex] = a[i];

a[i] = min;

a[maxindex] = a[size];

a[size] = max;

}

}

}

以上是“编程开发中如何实现选择排序”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联行业资讯频道!


文章名称:编程开发中如何实现选择排序
浏览路径:http://www.cdkjz.cn/article/poghgp.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220