选择排序

//选择排序  从序列中找到一个最小值元素,把最小值元素放在整个序列的首部,重复n轮,直到整个序列有序
void SelectSort(int buf[10],int size)
{
	int min  = 0; //记录最小值元素的下标
	int temp = 0; //备份最小值元素的值

	//需要比较n轮,每轮找到序列中的最小值元素
	for (int n = 0; n < size-1; ++n)  
	{
		 min  = n; //假设每轮序列中的第一个元素是最小值元素

		//找到序列中的最小值元素的下标
		for (int i = n+1; i < size; ++i)
		{
			//每轮需要通过比较的方式才可以确定最小值
			if ( buf[min] > buf[i] )                  
			{
				min = i;//更新当前的最小值元素的下标 
			}
		}

		//找到最小值元素,需要把最小值元素和序列的首部元素进行交换
		temp   = buf[min];
		buf[min] = buf[n];
		buf[n] = temp;
	}
}
posted @   小懿同学  阅读(3)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· AI 智能体引爆开源社区「GitHub 热点速览」
点击右上角即可分享
微信分享提示