`
isiqi
  • 浏览: 16067607 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

(五)简单排序—选择排序

阅读更多

一、选择排序思想:

选择排序的思想是:首先将第一个位置的元素标记为最小,依次与后面的元素比较,当发现比第一个元素更小的元素时,将那个元素标记为最小,然后用最小的这个元素继续与后面的元素比较,直到最后,然后将第一轮比较中最小的元素,与第一个元素交换位置。

接下来,进行第二轮循环,再以第二个元素作为起点,将其标记为最小,因为第一个元素已经排好了位置。依然按照上面的方法比较。依次类推,直到将所有最小的元素选择出来,与前面的交换。所以叫做选择排序。

二、选择排序算法Java描述

package com.solid.array;

public class SelectSort {

//数组对象

private long[] arr;

//数组元素个数

private static int nElems;

/**

* 构造方法

* @param max

*/

public SelectSort(int max) {

arr = new long[max];

nElems = 0;

}

/**

* 插入元素

* @param value

*/

public void insert(long value) {

arr[nElems] = value;

nElems++;

}

/**

* 选择排序算法

*/

public void selSort() {

int min; //用于标记最小的下标

for(int i=0; i<nElems-1; i++) {

min = i;

for(int j=i+1; j<nElems; j++) {

if(arr[j] < arr[min]) {

min = j;

}

}

if(min != i) {

long temp = arr[min];

arr[min] = arr[i];

arr[i] = temp;

}

}

}

/**

* 显示数组中的所有元素

*/

public void display() {

for(int i=0; i<nElems; i++) {

System.out.print("arr["+i+"]=" + arr[i] + " ");

}

System.out.println();

}

}

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics