Java直接选择排序

来源:互联网 发布:网络弊大于利经典提问 编辑:程序博客网 时间:2024/05/16 11:30

直接选择排序(Straight Selection Sort)思想是:在第1趟中,从n个记录中找出关键字值最小的记录与第一个记录进行交换;再第2趟中,从第2个记录开始的n-1个记录中再选出关键字最小的记录与第二个记录交换1;以此类推,在第i趟中,从第i个记录开始的n-i+1个记录中选出关键字最小的记录与第i个记录交换,直到整个序列按关键字值有序为止。

import java.util.Arrays;/** * 直接选择排序算法 *//** * @author 16026 * */public class DirectSelectSort {    public static void sort(int[] array) {        int len = array.length;        for (int i = 0; i < len - 1; i++) {            int min = i;// 设当前第i条记录为最小值            // 找出(i+1)到(len-1)中最小值的下标            for (int j = i + 1; j < len; j++) {                if (array[j] < array[min]) {                    min = j;// 记录最小值下标                }            }            // 将最小值记录与第i条记录交换            if (min != i) {                int temp = array[i];                array[i] = array[min];                array[min] = temp;            }        }    }    public static void main(String [] args){        int [] array = {45,89,699,52,14,236,58,7};        sort(array);        System.out.println(Arrays.toString(array));    }}

运行结果是:
这里写图片描述

0 0
原创粉丝点击