选择排序法
Posted 樱花树下叹息桥
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了选择排序法相关的知识,希望对你有一定的参考价值。
原理:假设要按升序排列一个数组.选择排序法先找到数列中最小的数,然后把它放在数列中的最前面.接下来再在剩下的数中找到最小的数,将它放到数列的第二位,以此类推,直到数列中仅剩一个数为止.
代码实现:
public class SelectionSort {
public void sortEle(int[] arr) {
int n = arr.length;
for(int i = 0;i < n;i++) {
// 将数组当前下标i存入k中
int k = i;
for(int j = i + 1;j < n;j++) {
// 在k后面的下标中找到比k坐标的值更小的就将该坐标存入k
if(arr[k] > arr[j]) {
k = j;
}
}
// 如果k坐标不是当前坐标就交换值
if(k != i) {
int temp = arr[i];
arr[i] = arr[k];
arr[k] = temp;
}
}
}
public static void print(int[] arr) {
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i] + " ");
}
}
public static void main(String[] args) {
SelectionSort ss = new SelectionSort();
int[] arr = {33,22,44,1,5,7,8,11,0};
ss.sortEle(arr);
ss.print(arr);
}
}
代码截图:
运行结果:
以上是关于选择排序法的主要内容,如果未能解决你的问题,请参考以下文章