`
吕金含
  • 浏览: 84717 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

java选择排序算法深度讲解

 
阅读更多

1.选择排序算法和思路

 public class SelectSort {
	/**
	 * 创建日期:2017-3-25上午11:05:03 作者:lvguanghui
	 */
	public static void main(String[] args) {
		/**
		 * 选择排序
		 * 思路: 一组数 从第一位先扫描一边 从中找到最小值,把最小值放到第一位 之后两者交换位置
		 * 之后从第二位开始扫描,从中找到最小值,把最小值放到第二位 之后两者交换位置 如此循环,直到结束
		 */
		int[] a = { 19, 29, 8, 2, 6, 9 };
		for (int i = 0; i < a.length; i++) {
			System.out.print(a[i] + " ");
		}
		System.out.println();
	  	int temp;// 用来保存要交换的数;
	 	for (int j = 0; j <a.length; j++) {
			int min_index=j;// 定义最小值;
 			for (int i = j; i <a.length; i++) {
		 		if (a[i]<a[min_index]) {
			        min_index= i;
			}
	 	 }
	   System.out.print("最小值"+a[min_index]+" ");
	   System.out.println("最小值的下标" + min_index);
		 temp=a[j];
		 a[j]=a[min_index];
		 a[min_index]=temp;
		for (int i = 0; i < a.length; i++) {
			System.out.print(a[i]+" ");
		}
		System.out.println();
 	}
	}
}
2.如图所示



















分享到:
评论

相关推荐

    java常见算法题解析大全。

    Java是一种广泛使用的编程语言,尤其在处理复杂计算和数据结构时,其强大的功能和灵活性使其成为实现算法的理想选择。在这个“java常见算法题解析大全”中,你将找到一系列涵盖不同难度级别的算法问题,旨在帮助Java...

    Java算法PPT(很不错的资料)

    排序算法包括经典的冒泡排序、插入排序、选择排序、快速排序、归并排序以及希尔排序等,这些算法在实际编程中经常被用到,了解它们的工作原理和时间复杂度分析对于优化代码性能至关重要。搜索算法则可能包含线性搜索...

    Java常用算法手册(jb51.net)_Java常用算法手册_

    排序算法是算法中的一大类,书中可能会包括冒泡排序、选择排序、插入排序、快速排序、归并排序、堆排序等。这些排序算法各有优劣,了解它们的工作原理和性能特点,能帮助我们在实际开发中选择最适合的排序方法。 ...

    非常经典的java基本算法

    Java中常见的排序算法有冒泡排序、选择排序、插入排序、快速排序、归并排序、堆排序等。每种排序算法都有其优缺点,如时间复杂度、空间复杂度等,理解它们的工作原理有助于在实际开发中选择最合适的排序方式。 2. *...

    java经典算法(PPT资源)

    一、排序算法 1. 冒泡排序:一种简单的比较排序方法,通过不断交换相邻的逆序元素逐步将序列调整为有序。 2. 选择排序:每次从未排序的部分中找到最小(或最大)的元素,放到已排序部分的末尾。 3. 插入排序:将未...

    java常用算法大全源代码.zip

    - P1:可能涵盖了基础的排序算法,如冒泡排序和插入排序。 - P4:可能涉及了高级数据结构,如堆或平衡二叉搜索树(AVL或红黑树)。 - P9:可能讲解了图论的基本概念和图的表示方法,如邻接矩阵和邻接表。 - P10:...

    常见程序算法原理讲解与实例代码java和c

    常见的排序算法有冒泡排序、选择排序、插入排序、快速排序、归并排序和堆排序。每种算法都有其特点和适用场景,例如,冒泡排序适用于小规模数据,而快速排序则在处理大数据时表现出色。在Java和C语言中,实现这些...

    java数据结构与算法中文版

    书中的算法可能包括排序(冒泡排序、插入排序、快速排序、归并排序、堆排序等)、搜索(线性搜索、二分搜索)、图算法(深度优先搜索、广度优先搜索)、动态规划等。算法的选择和优化直接影响程序的效率和性能。例如...

    Algorithms in java Java算法

    2. **排序算法**:常见的有冒泡排序、选择排序、插入排序、希尔排序、快速排序、归并排序、堆排序等。这些排序算法各有优缺点,适用于不同的场景。例如,快速排序通常在平均情况下具有较高的效率,而归并排序则在...

    Java数据结构和算法中文第二版_Java数据结构_

    4. **排序与查找**:包括经典的排序算法(冒泡排序、选择排序、插入排序、快速排序、归并排序、堆排序等)和查找算法(线性查找、二分查找)。这些是任何程序员都应该掌握的基础知识。 5. **树结构**:书中会详细...

    ACM算法大神讲解常用数据结构与算法优化(java版与c++版)

    常见的有排序算法(如冒泡排序、快速排序、归并排序、堆排序)、搜索算法(如深度优先搜索、广度优先搜索)、图算法(如Dijkstra最短路径算法、Floyd-Warshall所有对最短路径算法)、动态规划、回溯法、贪心算法等。...

    算法导论-java

    理解各种排序算法的时间复杂度和适用场景至关重要,Java中的Arrays.sort()方法就是基于快速排序和归并排序的实现。 9. **搜索算法**:深度优先搜索(DFS)和广度优先搜索(BFS)是图和树遍历的基础,Java中的Stack...

    java 数据结果和算法

    在Java中,常见的算法包括排序算法(冒泡排序、选择排序、插入排序、快速排序、归并排序等)、搜索算法(线性搜索、二分搜索)、图算法(深度优先搜索、广度优先搜索)、动态规划、贪心算法等。例如,冒泡排序是一种...

    Java数据结构和算法-带书签目录扫描版

    1. **排序算法**:冒泡排序、选择排序、插入排序、快速排序、归并排序、堆排序等,以及它们的时间复杂度分析。 2. **查找算法**:顺序查找、二分查找、哈希查找等,以及在不同数据结构中的应用。 3. **递归与分治**...

    JAVA算法

    5. **排序**:常见的排序算法有冒泡排序、插入排序、选择排序、快速排序、归并排序、堆排序等。它们在实际编程中有着广泛应用,比如在数据库查询优化和数据分析中。 6. **搜索**:包括线性搜索、二分搜索、深度优先...

    java经典算法(PPT资源)

    1. **排序算法**:包括冒泡排序、插入排序、选择排序、快速排序、归并排序、堆排序等。这些算法在数据处理中起着关键作用,理解它们的工作原理和时间复杂度对于优化程序性能至关重要。 2. **查找算法**:如二分查找...

    Java数据结构和算法(第二版)+随书源代码+applet小程序

    冒泡排序是简单直观的排序算法,书中通过Applet程序展示了冒泡排序的过程,帮助读者理解每一步的比较。此外,还会讲解插入排序、选择排序、快速排序、归并排序、堆排序等算法。 8. **查找算法**:包括顺序查找、二...

    java 数据结构 算法 第二版 中+英文版

    书中详细讲解了排序算法(如冒泡排序、选择排序、插入排序、快速排序、归并排序)、查找算法(如线性查找、二分查找)、图算法(如深度优先搜索、广度优先搜索)以及动态规划等高级算法。通过学习这些算法,读者可以...

    Java版本的数据结构和算法(Linux社区版)绝对原创

    常见的有排序算法(如冒泡排序、选择排序、插入排序、快速排序、归并排序、堆排序等)、搜索算法(如深度优先搜索DFS、广度优先搜索BFS、二分查找等)、图算法(如Dijkstra最短路径算法、Floyd算法、Prim最小生成树...

    Java数据结构与算法

    在Java中,常见的算法包括排序(如冒泡排序、选择排序、插入排序、快速排序、归并排序、堆排序)、搜索(如线性搜索、二分搜索)、图算法(如深度优先搜索、广度优先搜索)以及动态规划、贪心算法和回溯法等。排序...

Global site tag (gtag.js) - Google Analytics