首页 > 编程 > Java > 正文

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

2019-11-26 15:08:02
字体:
来源:转载
供稿:网友
/**  * 选择排序的思想:  * 每次从待排序列中找到最小的元素,  * 然后将其放到待排的序列的最左边,直到所有元素有序  *   * 选择排序改进了冒泡排序,将交换次数从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<array.length; i++) {       min = i;       // search for the minimum element       for(int j=i; j<array.length; j++) {         if(array[j] < array[min]) {           min = j;         }               }       // swap minimum element       tmp = array[i];       array[i] = array[min];       array[min] = tmp;           }   } } 

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表