`
kevin_in_java
  • 浏览: 30457 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

选择排序-java实现

阅读更多
package test;
/*
 * CHOUSESORT(A)
 * for i ← 1 to length(A)
 * 		min ← i
 * 		j ← min+1 
 * 			for j<length(A)
 * 				if A(j)<A(min)
 * 				min ← j
 * 		swap A(min) A(i)
 */

import java.util.Arrays;

public class Sort {
	public static void chouseSort(int array[])
	{
		for(int i=0;i<array.length;i++)
		{
			int min=i;
			for(int j=min+1;j<array.length;j++)
			{
				if(array[j]<array[min])
					min=j;
			}
			int temp=array[min];
			array[min]=array[i];
			array[i]=temp;
		}
	}
	public static void main(String args[])
	{
		int array[]={10,9,8,7,6,5,4,3,2,1};
		Sort.chouseSort(array);
		System.out.println(Arrays.toString(array));
	}
}

 

0
0
分享到:
评论
4 楼 kevin_in_java 2011-11-14  
sshmecity 写道
[color=violet][/color]
嗜血狂魔 写道
奇了怪了,你这方法不伦不类,是冒泡算法的复杂写法吧。

我感觉是得    复杂的冒泡   直接调用SORT方法就可以了。。。

应该没写错的。。。Java 的Sort方法是优化的快速排序,写这个复习下数据结构,请多指教
3 楼 kevin_in_java 2011-11-14  
嗜血狂魔 写道
奇了怪了,你这方法不伦不类,是冒泡算法的复杂写法吧。

应该没错的。选择排序遍历一遍找到最小的元素进行交换,只有array[min]元素和array[i]有交换,数列其他元素没有调整。冒泡会导致数列进行多次交换。不过这两个算法思想上区别不大
2 楼 sshmecity 2011-11-14  
[color=violet][/color]
嗜血狂魔 写道
奇了怪了,你这方法不伦不类,是冒泡算法的复杂写法吧。

我感觉是得    复杂的冒泡   直接调用SORT方法就可以了。。。
1 楼 嗜血狂魔 2011-11-14  
奇了怪了,你这方法不伦不类,是冒泡算法的复杂写法吧。

相关推荐

    八大排序-java实现版

    八大排序java实现版本,直接插入排序、折半插入排序、冒泡排序、简单选择排序、希尔插入排序、快速排序 、堆排序、2-路归并排序 、基数排序,并有时间比较,博文...

    文件按照window 的排序规则-Java实现

    在Java编程环境中,我们也可以模拟实现这种排序规则。Java提供了丰富的类库和方法来处理文件操作,包括对文件的排序。以下是关于如何在Java中实现Windows文件排序规则的详细解释: 1. **文件对象的创建**: 在Java...

    快排序的Java实现

    本篇将详细讲解如何使用Java实现快速排序。 首先,理解快速排序的步骤至关重要。快速排序的主要步骤包括: 1. **选择枢轴元素(Pivot Selection)**:在待排序的数组中选取一个元素作为枢轴,通常选择第一个或最后...

    排序算法9种--java实现

    这里我们专注于九种不同的排序算法的Java实现,这些算法在SortJavaVersion.zip压缩包中进行了整理,供学习和参考。 1. 冒泡排序(Bubble Sort):冒泡排序是一种简单的排序算法,它重复地遍历待排序的数列,一次...

    二维矩形装箱算法--二叉树--java实现

    在Java实现中,`BaseBoxChoose.java`可能包含了装箱算法的基本策略或基类,定义了装箱选择的接口和通用方法。`Slaves.java`可能是处理并行计算的部分,利用多线程并行处理多个箱子的装车问题,提高算法执行效率。`...

    快速排序 - QuickSort - 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没有内置的选择排序,但可以通过编写代码实现。时间复杂度同样为O(n^2)。 3. **插入排序**(Insertion Sort):插入排序通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并...

    冒泡排序-java版本

    附件中是使用 Java 实现冒泡排序的一个示例。 代码首先定义了一个 bubbleSort 方法来实现冒泡排序的逻辑,然后通过 main 方法创建了一个整数数组 arr,调用 bubbleSort 方法对其进行排序,最后使用 printArray 方法...

    常用排序算法的java实现(冒泡、插入、选择、希尔、归并、快排)

    本篇文章将详细讲解标题中提到的六种常见排序算法的Java实现。 1. **冒泡排序**:冒泡排序是最基础的排序算法之一,它通过不断交换相邻的逆序元素来逐渐将较大的元素“浮”到数组的前端。在Java中,冒泡排序的基本...

    冒泡排序-Java 版本

    总的来说,通过理解冒泡排序的工作原理和Java实现,我们可以更好地掌握数组排序的基本方法,并为进一步学习其他高级算法打下坚实的基础。对于初学者而言,冒泡排序是一个很好的起点,因为它简单易懂,便于实践。

    java 字符串a-z排序

    在Java编程语言中,对字符串中的字符进行a到z排序是一项常见的操作,特别是在处理文本数据或需要对字母顺序排列的场景。本知识点将详细讲解如何实现这个功能。 首先,我们需要理解字符串在Java中的本质。在Java中,...

    冒泡和选择排序Java代码实现

    以下是选择排序的Java代码实现示例: ```java public class SelectionSort { public static void selectionSort(int[] array) { int n = array.length; for (int i = 0; i &lt; n - 1; i++) { int minIndex = i; ...

    java实现归并排序

    Java实现归并排序 Java 实现归并排序是一种常用的排序算法,通过分治策略将原始数组分成小组,然后对每个小组进行排序,最后将排序好的小组合并成一个有序数组。下面是 Java 实现归并排序的知识点总结: 基本思想 ...

    04-Java基础(数组-常见操作-选择排序

    Java实现选择排序的代码示例: ```java public static void selectionSort(int[] arr) { for (int i = 0; i &lt; arr.length - 1; i++) { int minIndex = i; for (int j = i + 1; j ; j++) { if (arr[j] [minIndex]...

    流水作业调度-java实现

    流水作业调度-java实现 流水作业调度(Flow Shop Scheduling)是一种常见的生产调度问题,它的目标是找到一个最佳的作业顺序,以便在多台机器上执行多个作业,使得总的完成时间最短。流水作业调度问题是NP-hard问题...

    冒泡排序-Java版本

    冒泡排序是一种简单的...这段代码首先定义了一个 bubbleSort 方法来实现冒泡排序的逻辑,然后通过 main 方法创建了一个整数数组 arr,调用 bubbleSort 方法对其进行排序,最后使用 printArray 方法打印排序后的数组。

    选择排序java 代码

    以上就是关于“选择排序java代码”的详细解析,这个简单的Java实现可以帮助初学者理解和实践选择排序算法。在实际编程中,我们通常会使用更高效的排序算法,如快速排序、归并排序或堆排序,但理解基础排序算法对提升...

    Java实现拖拽列表项的排序功能

    总结一下,Java实现拖拽列表项的排序功能主要包括以下步骤: 1. 启用UI组件的拖放功能,如设置`AllowDrop`、`CanReorderItems`和`IsSwipeEnabled`属性。 2. 监听并处理拖放事件,更新数据模型以反映拖放操作。 3. ...

Global site tag (gtag.js) - Google Analytics