当前位置: 首页 > 后端技术 > Java

算法总结-直接选择排序

时间:2023-04-01 15:14:51 Java

算法定义直接选择排序是选择排序的一种,是一种简单的排序方法。根据维基百科的定义,它的基本思想是:第一次从R[0]~R中选择最小值从[n-1],与R[0]交换,从R[1]中选择最小值~R[n-1]第二次,与R[1]交换...第i次从R[i-1]~R[n-1]中选择最小值,与R[i交换-1]...第n-1次从R[n-2]~R[n-1]中选择最小值与R[n-2]交换,共n-1次,得到获得按排序代码升序排列的有序序列。算法原理直接选择排序算法的原理如下:1.找到未排序序列中最小(最大)的元素,将其存放在已排序序列的起始位置。2、继续从剩余的未排序元素中寻找最小(最大)的元素,然后将其放在已排序序列的末尾。3.重复第二步,直到所有元素都排序完毕。代码实现遵循以上思路,代码如下:publicclassMain{//直接选择排序(selectionsorting),平均时间复杂度O(n^2),最佳时间复杂度O(n^2),最坏时间复杂度O(n^2),空间复杂度O(1)publicvoiddirectlySelectSort(int[]arr){//获取数组的长度intn=arr.length;//取n-1次行程,每次行程确定当前最小值for(inti=0;i