数据结构-十大经典排序算法之选择排序

数据结构-十大经典排序算法之选择排序

  • 算法思想
  • 算法步骤
  • 算法动态演示
  • 部分代码实现

第一部分:算法思想
选择排序是一种简单直观的排序算法,首先在未排序序列中找到最小元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。
**第二部分:**算法步骤
初始状态:无序序列为R[0,n-1],长度n,有序区为空;
第i=1,…,n-1趟排序从当前无序区R[i-1,n-1]中选出最小的元素R[k],并将它与无序区的第1个记录R[i-1]交换,则R[0,i-1]变为元素个数增加1的新有序区,R[i,n-1]变为元素个数减少1的新无序区;n-1趟选择交换后结束。
**第三部分:**算法动态演示
在这里插入图片描述
**第四部分:**部分代码实现

void sort_array(int *arr, int n)
//  编程实现《选择排序算法》:将乱序序列arr转化为升序序列
//  函数参数:乱序整数数组(无重复元素) 数组长度
{
    int min ;
	for(int i = 0 ;i<n-1;i++){
		min = i ;
		for(int j = i+1;j<n;j++){
			if(arr[j]<arr[min])
				min = j;
		}
		if(min!=i){
			int temp = arr[i];
			arr[i] = arr[min] ;
			arr[min] = temp;
		}
	}
    
}
  • 看到这了,如果觉得有用的话动动手指点个赞吧,下期带来“数据结构-十大经典排序算法之插入排序”。
原创文章 30 获赞 15 访问量 3197

猜你喜欢

转载自blog.csdn.net/CSU_hjh/article/details/106154133