选择排序--JAVA实现
思想:
假设有N条数据,则暂且标记下标为0的数据为min(即最小值),使用out标记最左边未排序的数据,然后使用in标记下标为1的数据,依次与min作比较,如果比min小,则将该数据标记为min(最小值),当第一轮比较完后,最终的min与out标记数据交换,依次类推:
源码如下所示:
package org.iljava.datastructures;
/**
*
* @author Xiaolong_Long
*
*/
public class SelectSort {
public static int[] a = { 23,0,367,1,43,6,25,24433 }; // 预设数据数组
public static void main(String args[]) {
System.out.println("未执行选择排序操作前的结果依次输出为:");
for (int i :a) {
System.out.print(i+"\t");
}
int in, out, min;
for (out = 0; out < a.length - 1; out++) {
min = out;
for (in = out + 1; in < a.length; in++) {
//更新最小值
if (a[in] < a[min])
min = in;
}
//数据交换
int temp = a[out];
a[out]=a[min];
a[min]=temp;
}
System.out.println();
System.out.println("执行选择排序操作后的结果依次输出为:");
for (int i :a) {
System.out.print(i+"\t");
}
}
}
运行结果如下所示:
未执行选择排序操作前的结果依次输出为:
23 0 367 1 43 6 25 24433
执行选择排序操作后的结果依次输出为:
0 1 6 23 25 43 367 24433
分享到:
相关推荐
八大排序java实现版本,直接插入排序、折半插入排序、冒泡排序、简单选择排序、希尔插入排序、快速排序 、堆排序、2-路归并排序 、基数排序,并有时间比较,博文...
快速排序 import java.util.Arrays; public class QuickSort { public static void quickSort(int[] arr) { if (arr == null || arr.length ) { return; } quickSort(arr, 0, arr.length - 1); } ...
在Java编程语言中,对字符串中的字符进行a到z排序是一项常见的操作,特别是在处理文本数据或需要对字母顺序排列的场景。本知识点将详细讲解如何实现这个功能。 首先,我们需要理解字符串在Java中的本质。在Java中,...
在Java编程环境中,我们也可以模拟实现这种排序规则。Java提供了丰富的类库和方法来处理文件操作,包括对文件的排序。以下是关于如何在Java中实现Windows文件排序规则的详细解释: 1. **文件对象的创建**: 在Java...
本篇将详细讲解如何使用Java实现快速排序。 首先,理解快速排序的步骤至关重要。快速排序的主要步骤包括: 1. **选择枢轴元素(Pivot Selection)**:在待排序的数组中选取一个元素作为枢轴,通常选择第一个或最后...
这里我们专注于九种不同的排序算法的Java实现,这些算法在SortJavaVersion.zip压缩包中进行了整理,供学习和参考。 1. 冒泡排序(Bubble Sort):冒泡排序是一种简单的排序算法,它重复地遍历待排序的数列,一次...
`Algorithm.java`文件可能包含了这些排序算法的Java实现代码,而`常见排序算法的实现与性能比较.doc`文档则可能详细比较了这些算法的性能和适用场景。`readme.txt`文件可能是对整个项目的简要说明,包括如何运行和...
在Java实现中,`BaseBoxChoose.java`可能包含了装箱算法的基本策略或基类,定义了装箱选择的接口和通用方法。`Slaves.java`可能是处理并行计算的部分,利用多线程并行处理多个箱子的装车问题,提高算法执行效率。`...
以上就是关于“选择排序java代码”的详细解析,这个简单的Java实现可以帮助初学者理解和实践选择排序算法。在实际编程中,我们通常会使用更高效的排序算法,如快速排序、归并排序或堆排序,但理解基础排序算法对提升...
在Java编程中,实现选择排序和折半查找的方法有很多种。对于选择排序,可以创建一个辅助函数,通过两层循环实现,外层循环控制未排序部分,内层循环用于寻找当前未排序部分的最小值并交换位置。对于折半查找,同样...
堆排序7.java 使用java实现的堆排序堆排序7.java 使用java实现的堆排序堆排序7.java 使用java实现的堆排序堆排序7.java 使用java实现的堆排序堆排序7.java 使用java实现的堆排序堆排序7.java 使用java实现的堆排序堆...
在Java实现这些排序算法时,我们需要理解每种排序方法的基本逻辑,并将其转化为相应的代码结构。例如,快速排序的实现通常包括`partition`函数来划分数组,以及递归调用自身来处理子数组。归并排序则需要额外的存储...
本篇文章将详细讲解标题中提到的六种常见排序算法的Java实现。 1. **冒泡排序**:冒泡排序是最基础的排序算法之一,它通过不断交换相邻的逆序元素来逐渐将较大的元素“浮”到数组的前端。在Java中,冒泡排序的基本...
在 Java 中,还有其他的排序算法,如堆排序、Radix 排序等,每种排序算法都有其优缺点,选择合适的排序算法取决于具体的应用场景。 在上述代码中,使用了 List 接口来存储 ServerInfo 对象列表,并使用了 ...
总的来说,"排序算法_基于Java实现的排序算法之BubbleSort实现"这个项目提供了学习和实践冒泡排序算法的机会。通过分析和编写这样的代码,不仅可以加深对排序算法的理解,也能提升Java编程技巧。同时,它也提醒我们...
堆排序12.java 使用java代码实现堆排序12.java 使用java代码实现堆排序12.java 使用java代码实现堆排序12.java 使用java代码实现堆排序12.java 使用java代码实现堆排序12.java 使用java代码实现堆排序12.java 使用...
以下是选择排序的Java代码实现示例: ```java public class SelectionSort { public static void selectionSort(int[] array) { int n = array.length; for (int i = 0; i < n - 1; i++) { int minIndex = i; ...
堆排序10.java 使用java来实现堆排序10.java 使用java来实现堆排序10.java 使用java来实现堆排序10.java 使用java来实现堆排序10.java 使用java来实现堆排序10.java 使用java来实现堆排序10.java 使用java来实现堆...
快速排序 import java.util.Arrays; public class QuickSort { public static void quickSort(int[] arr) { if (arr == null || arr.length ) { return; } quickSort(arr, 0, arr.length - 1); } ...
该资源提供了Java中如何实现选择排序的全面指南。文档中涵盖了选择排序的基本概念,包括如何对数组进行排序以及如何在Java中实现选择排序。此外,文档还包括一个逐步指南,介绍了如何在Java中实现选择排序,包括详细...