Java数据结构及算法实例:选择排序 Selection Sort

网友投稿 167 2023-08-01


Java数据结构及算法实例:选择排序 Selection Sort

/**

* 选择排序的思想:

* 每次从待排序列中找到最小的元素,

* 然后将其放到待排的序列的最左边,直到所有元素有序

*

* 选择排序改进了冒泡排序,将交换次数从O(N^2)减少到O(N)

* 不过比较次数还是O(N)

*/

package al;

public class SelectSort {

public static void main(String[] args) {

SelectSort selectSort = new SelectSort();

int[] elements = { 14, 77, 21, 9, 10, 50, 43, 14 };

// sort the array

selectSort.sort(elements);

// print the sorted array

for (int i = 0; i < elements.length; i++) {

System.out.print(elements[i]);

System.out.print(" ");

}

}

/**

* @author

* @param array 待排数组

*/

public void sort(int[] array) {

// min to save the minimum element for each round

int min, tmp;

for(int i=0; i

min = i;

// search for the minimum element

for(int j=i; j

if(array[j] < array[min]) {

min = j;

}

}

http:// // swap minimum element

tmp = array[i];

array[i] = array[min];

array[min] = tmp;

}

}

}

min = i;

// search for the minimum element

for(int j=i; j

if(array[j] < array[min]) {

min = j;

}

}

http:// // swap minimum element

tmp = array[i];

array[i] = array[min];

array[min] = tmp;

}

}

}

if(array[j] < array[min]) {

min = j;

}

}

http:// // swap minimum element

tmp = array[i];

array[i] = array[min];

array[min] = tmp;

}

}

}


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:浅谈setTimeout 与 setInterval
下一篇:Java数据结构及算法实例:考拉兹猜想 Collatz Conjecture
相关文章

 发表评论

暂时没有评论,来抢沙发吧~