`

java算法之选择排序

 
阅读更多
package com.hym.test;

public class SelectSort {
	int[] arrayTest = { 5, 26, 1, 783, 23, 2, 62, 9, 46 };

	public void selectSort() {
		for (int i = 0; i < arrayTest.length; i++) {
			int theMinNumIndex = i;
			for (int j = i; j < arrayTest.length; j++) {
				if ((j < arrayTest.length - 1)
						&& (arrayTest[theMinNumIndex] > arrayTest[j + 1])) {
					theMinNumIndex = j + 1;
				}
			}
			int temp = arrayTest[i];
			arrayTest[i] = arrayTest[theMinNumIndex];
			arrayTest[theMinNumIndex] = temp;
		}
	}
	
	public static void main(String[] args) {
		SelectSort sort = new SelectSort();
		sort.selectSort();
		for (int i = 0; i < sort.arrayTest.length; i++) {
			System.out.print(sort.arrayTest[i] + " ");
		}
	}
}


1. 每一趟从待排序的数据元素中选出最小(或最大)的一个元素,顺序放在已排好序的数列的最后,直到全部待排序的数据元素排完。 选择排序是不稳定的排序方法。

2. 选择排序比较的次数没有减少,只是每次找到最小的那个,最后才交换位置。所以减少了交换的次数。比冒泡排序快。

3. http://baike.baidu.com/view/547263.htm
分享到:
评论

相关推荐

    java算法——选择排序

    选择排序: 每次在“无序”队列中选择“最小值”,放在有序队列最后,并从无序队列中删除该值。

    Java选择排序算法源码

    本主题将深入探讨Java实现的选择排序算法,这是一种简单直观的排序算法,适合新手学习。 选择排序(Selection Sort)的基本思想是,在未排序的序列中找到最小(或最大)的元素,放到序列的起始位置,然后再从剩余未...

    java排序算法插入选择冒泡

    java排序算法java排序算法插入选择冒泡java排序算法插入选择冒泡

    java算法,快速排序、冒泡排序、选择排序

    java算法,快速排序、冒泡排序、选择排序 快速排序文章:http://blog.csdn.net/yanwenyuan0304/article/details/51822361 冒泡排序文章:http://blog.csdn.net/yanwenyuan0304/article/details/51819045

    [Java算法-排序]选择排序.java

    该资源提供了Java中如何实现选择排序的全面指南。文档中涵盖了选择排序的基本概念,包括如何对数组进行排序以及如何在Java中实现选择排序。此外,文档还包括一个逐步指南,介绍了如何在Java中实现选择排序,包括详细...

    Java 选择排序 算法

    Java选择排序算法是一种简单直观的排序算法,它的工作原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。这种算法对列表中的数据进行了一次完整...

    详解Java常用排序算法-选择排序

    详解Java常用排序算法-选择排序 选择排序(Selection Sort)是一种简单的排序算法,它的基本思想是每次从待排序的元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的元素排完。 选择...

    各种排序算法比较(java实现)

    冒泡排序是最直观的排序算法之一,通过不断交换相邻的逆序元素使较大的元素逐渐“浮”到数组末尾。冒泡排序的时间复杂度为O(n^2),适用于小规模或者基本有序的数据。 6. **桶排序(Bucket Sort)**: 桶排序是一种...

    java排序算法使用及场景说明

    Java 排序算法使用及场景说明 本文档主要介绍了 Java 排序算法的使用和场景说明,包括了五个实践场景的解决方案。 Scenario 1: 找出两个文件共同的 URL 在这个场景中,我们有两个文件 a 和 b,每个文件中存放了 ...

    JAVA经典算法各种排序算法

    Java经典算法 ,各种排序算法 老掉牙 河內塔 費式數列 巴斯卡三角形 三色棋 老鼠走迷官(一) 老鼠走迷官(二) 騎士走棋盤 八個皇后 八枚銀幣 生命遊戲 字串核對 雙色、三色河內塔 背包問題(Knapsack...

    常用排序算法java演示

    本文将深入探讨标题"常用排序算法java演示"中涉及的知识点,包括排序算法的原理、Java实现方式以及其在实际应用中的图形演示。 首先,让我们逐一了解几种常见的排序算法: 1. **冒泡排序(Bubble Sort)**:这是一...

    java 排序算法 选择排序,插入排序,自顶向上合并排序,合并排序,快速排序

    在编程领域,排序算法是数据结构与算法学习中的重要组成部分,尤其在Java中,掌握各种排序算法对于优化程序性能至关重要。以下将详细讲解标题和描述中提到的五种排序算法:选择排序、插入排序、自顶向上合并排序、...

    Java排序算法实现

    Java排序算法实现 Java排序算法实现 Java排序算法实现

    Java算法集锦,所有排序算法

    "Java算法集锦"这个资源集合了多种排序算法的实现,旨在帮助开发者深入理解和运用这些经典算法。下面将详细介绍其中的一些关键算法及其特点。 1. **冒泡排序**(Bubble Sort):冒泡排序是最基础的排序算法之一,...

    JAVA排序算法集合

    根据给定文件的信息,本文将详细介绍Java中的五种主要排序算法:插入排序、交换排序、选择排序、归并排序以及基数排序。每种排序方法都包括了不同的变体和技术细节。 ### 一、插入排序 #### 1. 直接插入排序 直接...

    java排序算法效率比较

    在Java编程语言中,排序算法是数据结构与算法学习中的重要组成部分。本实验通过生成大量随机数并写入文件,然后使用四种不同的排序算法进行排序,以比较它们的效率。以下是对这四种排序算法的详细解释: 1. **冒泡...

    Java各种排序算法代码.zip

    冒泡排序是最简单的排序算法之一,通过重复遍历待排序的元素列表,比较相邻元素并交换位置,直至列表排序完成。在Java中,冒泡排序通常使用两层循环实现。 2. 插入排序(Insertion Sort): 插入排序通过创建一个...

    java算法——归并排序

    归并排序 在排序前,先建好一个长度等于原数组长度的临时数组

Global site tag (gtag.js) - Google Analytics