栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

选择排序及优化版本-二元选择排序

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

选择排序及优化版本-二元选择排序

选择排序基本思路

基本思路就是遍历两次,外层循环从0到n-1,内层循环选出最小的值与当前值进行交换,保证最小的值在前面。

void selectionSort(vector &arr)
{
	int n=arr.size();
	int minIndex=0;
	for(int i=0;iarr[j])
			{
				minIndex=j;
			}
		}
		swap(arr[i],arr[minIndex]);
	}
}

二元选择排序算法

使用二元选择排序,每轮选择记录最小值和最大值,可以把数组需要遍历的最大值最小值缩小一倍。将最小值交换到首位,最大值交换到末尾

void selectionSort2(vector &arr)
{
	int minIndex,maxIndex;
	int n=arr.size();
	for(int i=0;iarr[maxIndex])
			{
				maxIndex=j;
			}
			if(arr[j]
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/529212.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号