import java.util.Arrays;public class SelectSort {public static void main(String[] args) {int[] arr = {8,1,4,5,3,6,2,7};selectSort(arr);System.out.println(Arrays.toString(arr));}private static void selectSort(int[] arr){/ 循环 arr.lenght-1次数for (int i = 0; i < arr.length-1; i++) {int index = i;boolean isFind = false;和后面的每个数进行比较for (int j = i+1; j < arr.length; j++) {if(arr[index] > arr[j]){/// 找到最小的数的下标index = j;isFind = true;}}if(isFind) {int tmp = arr[i];arr[i] = arr[index];arr[index] = tmp;}}}
}

设计模式:选择排序(select sorting)相关推荐

  1. 内部排序 (四):选择排序 Selection Sorting (简单选择排序、堆排序)

    作为数据结构的课程笔记,以便查阅.如有出错的地方,还请多多指正! 目录 简单选择排序 Simple Selection Sort 排序过程 算法实现 算法评价 T(n) S(n) 是否稳定 堆排序 H ...

  2. 【排序算法】冒泡排序、简单选择排序、直接插入排序比较和分析

    [排序算法]冒泡排序.简单选择排序.直接插入排序比较和分析 写在前面: 本文简单介绍了冒泡排序.简单选择排序.直接插入排序,并对这三种排序进行比较,入参都是80000个随机数,比较算法耗时.进一步,我 ...

  3. 【排序算法】图解简单选择排序(图解堪比Debug显示每次循环结果)

    [排序算法]图解简单选择排序(图解堪比Debug分析每次循环结果) 写在前面: 本文主要介绍简单选择排序算法,通过图片一步步解释每一趟每一次的后移.代码通过C#实现,并输出每一次交换的情况和比较次数, ...

  4. 排序算法-简单选择排序

    文章目录 1.基本介绍 2.选择排序的思想 3.选择排序思路分析图 4.代码实现 1.基本介绍 选择排序属于内部排序算法,是从预排序的数据中,按指定的规则选出某一元素,再依规定交换位置后达到排序的目的 ...

  5. # select sort 选择排序

    选择排序(select sort) 1.基本描述 ​ 其实也是差不多的思想,把数组分为一部分有序,一部分无序(未排序).在未排序的数列中找到最大或者最小,然后放到未排序的首部(已排序尾部).知道所有元 ...

  6. 算法与数据结构(冒泡排序,选择排序和插入排序的总结)

    冒泡排序,选择排序和插入排序的总结 在规模较小时,或者元素的有序性较高时,插入排序的时间复杂度可以接近 O(n) ,是上述三种排序里表现最好的 一.通过表格我们可以发现,冒泡排序的时间复杂度是要优于选 ...

  7. 算法与数据结构(选择排序)

    选择排序 Select Sort 从待排序序列中选出最小(或最大)元素,放入新建的有序序列中,并将其从原无序序列移除.不断重复直到无序序列最终没有元素剩余 选择排序规则: 总共要进行 n-1 次循环 ...

  8. 02_Python算法+数据结构笔记-冒泡排序-选择排序-插入排序-快排-二叉树

    b站视频:路飞IT学城 清华计算机博士带你学习Python算法+数据结构_哔哩哔哩_bilibili 文章目录 #11 排序介绍 #12 冒泡排序介绍 #13 冒泡排序 #14 选择排序 #15 插入 ...

  9. 排序算法——选择排序法(Select Sorting)

    选择排序(Select Sorting) 基本介绍 ​ 选择排序也属于内部排序法,是从预排序的数据中,按指定的规则选出某一元素,再依规定交换位置后达到排序的目的 选择排序思想 ​ 选择排序(Selec ...

最新文章

  1. python as_matrix()
  2. PMcff 020产品经理峰会现场火爆,干货不断
  3. 专业对不对口重要吗_应届生求职,专业对口到底重不重要?
  4. using在sql中是什么意思_扇贝英语地道表达法——“call for”是什么意思呢?
  5. 除非万不得已,否则绝不谈判
  6. backbone js学习笔记之第二篇Model层
  7. 随机森林模型及案例(Python)
  8. 数学建模 - 时间序列分析
  9. 2.5寸移动硬盘盒改装 驱动3.5寸台式机硬盘
  10. 第4章内容-启动豆果美食并抓包
  11. 乌镇现场 | 倪光南:人工智能应该更好的为人类的服务
  12. Android Studio如何连接手机设备
  13. 五分钟教你学会写产品需求文档(PRD)
  14. java 全角_java 全角半角字符转换的方法实例
  15. python篮球-python画篮球
  16. 网站管理后台被破解原理分析及实例演示
  17. Learning Entity and Relation Embeddings for Knowledge Graph Completion (TransR)论文翻译
  18. 用JSSE定制SSL连接
  19. UIImageView 使用 padding 为图片设置内边距的 2 种方案
  20. xp双系统linux 视频教程,如何安装XP和Linux双系统

热门文章

  1. UVA1386 【Cellular Automaton】题解
  2. 二周第三次课(3月28日)
  3. 为什么你应该停止阅读新闻?
  4. matlab 文件路径问题
  5. BZOJ 2752: [HAOI2012]高速公路(road)
  6. Struts(十):OGNL表达式(一)
  7. Centos 安装Mongo DB
  8. (剑指Offer)面试题19:二叉树的镜像
  9. 在brew开发中遇到的一些问题
  10. 用Windows Live Writer发布博客也可以不生成缩略图