//选择排序(Selection Sort)的基本思想是:每一趟从待排序的记录中选出关键字最小的记录,
//顺序放在已排好序的子文件的最后,直到全部记录排序完毕。
//注意起始指针i,扫描指针j,记录本趟扫描最小记录指针k,尔后R[i]与R[k]两两交换,并继续下一轮相当的动作直至完全正确的排序为止
//常用的选择排序方法有直接选择排序和堆排序。
//如4,89,3,55,66,7,2,44,1
public class StraightSelectionSort {
public static void main(String[] args) {
int[] n = { 594, 89, 3, 55, 86, 127, 2, 44, 1 };
StraightSelectionSort.straightSelectionSort(n);
for (int i = 0; i < n.length; i++) {
System.out.print(n[i] + ",");
}
}
public static void straightSelectionSort(int[] n) {
for (int i = 0; i < n.length; i++) {
int k = i;//用k为当前最小记录的下标
int min = n[i];
for (int j = i + 1; j < n.length; j++) {
if (n[j] < min) {
min = n[j];
k = j;//找出第i趟最小的并记下其下标
}
}
int temp = n[i];
n[i] = min;
n[k] = temp;//让下标为i,k的记录互换以实现记录最小的放至前面已排好序组的后面
}
}
}
分享到:
相关推荐
java 选择排序法 java 选择排序法 java 选择排序法
Java语言实现的选择排序算法,代码里头有详细注释,注释皆为简单英文,因为这个算法比较简单,欢迎新手下载学习使用,欢迎后期的学习交流!
Java 选择排序算法的示例代码。 欢迎访问个人博客。 http://blog.csdn.net/evanwang1987
Java各种排序算法集合: 1)插入排序(直接插入排序、希尔排序) 2)交换排序(冒泡排序、快速排序) 3)选择排序(直接选择排序、堆排序) 4)归并排序 5)分配排序(箱排序、基数排序)
java排序算法java排序算法插入选择冒泡java排序算法插入选择冒泡
Java所有排序算法大全 Java所有排序算法大全 Java所有排序算法大全 Java所有排序算法大全
java排序算法使用及场景说明 文档后面有一些别人的链接,多在google上搜索Java排序算法,及维基百科上面也有很全的算法介绍。
java实现的常用的几种基本排序算法,插入、交换、选择、归并
Java排序算法实现 Java排序算法实现 Java排序算法实现
实现合并排序,插入排序,希尔排序,快速排序,冒泡排序,桶排序算法的java实现。
Java各种排序算法代码.rar
JAVA冒泡排序和快速排序算法,符合实验报告要求哦
Java 快速排序,目前来说效率很高的一种排序算法,好理解。
java 常见排序算法的实现 有冒泡、选择、快速、比较等常见的排序算法 还包括二叉树的实现
详解Java常用排序算法-选择排序
Java常用排序算法源码 稳定:冒泡排序、插入排序、归并排序和基数排序;不稳定:选择排序、快速排序、希尔排序、堆排序
java数组排序经典之一,选择法,效率很高的一种排序方法,内部实现二分搜索法。
在实际应用中,插入排序和现则排序因为实现简单,使用的比较多,但是在对效率要求比较高、且待排序数据量大的场合,还是应该采用时间复杂度较低的排序算法,因此对排序算法进行试验比较,增强实践认识很有必要。...
Java 排序 随机数 算法收录了几种java常见的排序算法!
Java常用排序算法&程序员必须掌握的8大排序算法+二分法查找 Java常用排序算法&程序员必须掌握的8大排序算法+二分法查找