八大排序之选择排序

来源:互联网 发布:做奥数题的软件 编辑:程序博客网 时间:2024/05/20 05:57

概述

  选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理是把0索引的元素,和索引1以后的元素都进行比较,第一次完毕,最小值出现在了0索引。同理,其他的元素就可以排好。

实现步骤

  1. 设定最小值的索引为0;一个布尔类型的开关;

  2. 把0索引的元素,和索引1以后的元素都进行比较

  3. 找出最小值,如果不是本身,此时isChange为true,就与之交换。这步做完后,最前的元素会是最小的数。

  4. 针对所有的元素重复以上的步骤,除了最后一个。



  1. int minIndex = 0;boolean isChange =false;for (int i = 0; i < a.length; i++) {for (int j = i + 1; j < a.length; j++) {if(a[j]<a[minIndex]){minIndex = j;isChange = true;}}if(isChange){a[i] =a[i] ^ a[minIndex];a[minIndex] =a[minIndex] ^ a[i] ;a[i] =a[i] ^ a[minIndex];}if (i<= a.length - 2) {minIndex = i +1;}isChange = false;}



0 0
原创粉丝点击