java实现选择排序
Posted 计算机技术与科学
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java实现选择排序相关的知识,希望对你有一定的参考价值。
选择排序总结一句话就是找最小,然后交换,外层需要循环size-1次,内层循环随着最小的找到了的越来越多,循环的次数越来越少
代码:
package com.irisian.algorithm;
public class SelectSort {
public long[] arr;
private int size;
private int maxSize;
public SelectSort(int maxSize) {
this.maxSize = maxSize;
this.arr = new long[maxSize];
}
public void insert(long item) {
arr[size++] = item;
}
//选择排序,找最小
public void selectSort() {
int min = 0;
long tmp = 0;
for (int i = 0; i < size - 1; i++) {
min = i;
for (int j = i + 1; j < size; j++) {
if (arr[j] < arr[min]) {
min = j;
}
}
//交换
tmp = arr[i];
arr[i] = arr[min];
arr[min] = tmp;
}
}
public void display() {
for (long l : arr) {
System.out.print(l + "\t");
}
System.out.println();
}
public static void main(String[] args) {
SelectSort selectSort = new SelectSort(5);
selectSort.insert(10);
selectSort.insert(16);
selectSort.insert(3);
selectSort.insert(60);
selectSort.insert(5);
selectSort.display();
selectSort.selectSort();
selectSort.display();
}
}
以上是关于java实现选择排序的主要内容,如果未能解决你的问题,请参考以下文章