`
kobe学java
  • 浏览: 258585 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

简单选择排序(Select Sort),java版

    博客分类:
  • java
 
阅读更多

转载:

 

http://blog.chenlb.com/2008/12/select-sort-for-java.html

简单选择排序(Select Sort),java版。

发表于:2008年12月28日 | 分类:算法 | 标签: sort | views(661)

版权信息: 可以任意转载, 转载时请务必以超链接形式标明文章原文出处, 即下面的声明.

 

原文出处:http://blog.chenlb.com/2008/12/select-sort-for-java.html

常用的简单排序方法中,除插入排序、冒泡排序,还有简单选择排序(有时候也直接说成是选排序)。

简单选择排序原理:从无序区域里选择最小(或最大)的添加到有序区里。一开始所有的数据都是在无序区里,排好一个,无序区个数就少一个。
时间复杂度:平均O(n2),最坏情况O(n2)。

示例代码:

  1. package com.chenlb.sort;  
  2.   
  3. import java.util.Arrays;  
  4.   
  5. public class SelectSort {  
  6.   
  7.     public static int[] sort(int[] datas) {  
  8.         for(int i=0; i<datas.length-1; i++) {  
  9.             int minIndex = i;  
  10.             int min = datas[i];  
  11.             for(int j=i+1; j< datas.length; j++) {//在后面, 找最小的.  
  12.                 if(datas[j] < min) {  
  13.                     minIndex = j;  
  14.                     min = datas[j];  
  15.                 }  
  16.             }  
  17.             if(minIndex != i) {  
  18.                 SortUtil.swap(datas, i, minIndex);  
  19.             }  
  20.         }  
  21.         return datas;  
  22.     }  
  23.   
  24.     public static void main(String[] args) {  
  25.         int[] datas = {5,1,3,4,9,2,7,6,5};  
  26.         sort(datas);  
  27.         System.out.println(Arrays.toString(datas));  
  28.   
  29.         datas = SortUtil.randomDates(10);  
  30.         sort(datas);  
  31.         System.out.println(Arrays.toString(datas));  
  32.     }  
  33.   
  34. }  

运行结果:

  1. [1, 2, 3, 4, 5, 5, 6, 7, 9]  
  2. [67, 81, 122, 394, 452, 509, 533, 536, 608, 861]  

 

分享到:
评论

相关推荐

    用java实现选择排序SelectSort

    用java实现选择排序SelectSort 用java实现选择排序SelectSort 用java实现选择排序SelectSort

    选择排序的Java实现方法SelectSort

    选择排序的Java实现方法SelectSort,简单易懂,适合算法初学者。

    java实现选择排序实例

    在Java中,我们可以创建一个名为`SelectSort`的类,包含一个名为`selectSort`的静态方法,该方法接受一个整数数组作为参数,并对其进行选择排序。 ```java public class SelectSort { public static void select...

    Java 选择排序 算法

    - 在`SelectSortDemo`这个文件中,你可能会看到一个名为`selectSort`的方法,它接受一个整数数组作为参数,然后执行上述的选择排序步骤。 - 方法通常会包含一个外层循环,用于控制遍历的次数,等于数组长度减一。 ...

    select sort

    "Select Sort"是一种简单的排序算法,它的工作原理是通过重复地遍历待排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。遍历数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序...

    Java快速排序+简单选择排序+折半插入排序

    做了个Java Swing 图形界面,选择3中排序方法进行排序。工程用NetBeans 打开,运行Main.java文件或直接点击运行主程序,3种算法在源包中的sorts文件夹下,分别为: ...SelectSort.java(简单选择排序)

    selectsort_cpp(选择排序).cpp

    selectsort_cpp(选择排序).cpp

    02_select_sort_选择排序python实现_

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

    java 八大排序

    Java 八大排序是 Java 语言中八种常用的排序算法,分别是直接插入排序、希尔排序、简单选择排序、冒泡排序、快速排序、归并排序、堆排序和 Radix 排序。下面是对每种排序算法的详细介绍: 1. 直接插入排序 基本...

    选择排序(Select Sort).md

    在B站讲选择排序的笔记,需要的同学可以免费下载

    Java三种排序 Java三种排序

    public class SelectSort { public static void main(String[] args) { int[] array = {29, 23, 56, 40, 12, 63, 89, 7, 96, 38}; System.out.println("Before sort:"); Display(array); Sort(array); ...

    java八大经典排序算法

    java写的八大经典排序算法(win7 jdk 1.6 下运行) 冒泡排序 BubbleSort 堆排序 HeapSort 插入排序 InsSort 快速排序 QuickSort 归并排序 MergeSort ...简单选择排序 SelectSort 希尔排序 ShellSort

    SortSelect vue + elementui自定义按首字母排序下拉列表组件

    "SortSelect"组件就是这样一个解决方案,它允许用户快速浏览和选择以特定字母开头的选项,同时支持选中事件,增强了可扩展性。 首先,创建一个Vue组件通常涉及以下几个关键步骤: 1. **组件定义**:在Vue中,我们...

    C#,简单选择排序算法(Simple Select Sort)的源代码与数据可视化

    常见的四种排序算法是:简单选择排序、冒泡排序、插入排序和快速排序。其中的快速排序的优势明显,一般使用递归方式实现,但遇到数据量大的情况则无法适用。实际工程中一般使用“非递归”方式实现。本文搜集发布四种...

    SelectSort.java

    选择法排序

    java排序.txt

    public void selectSort(int[] data, String sortType) { if (sortType.equals("asc")) { // 升序 // ... } else if (sortType.equals("desc")) { // 降序 // ... } else { System.out.println("使用方法...

    排序算法的Java实现

    6. **选择排序(SelectSort.java)** 选择排序是一种简单直观的算法,每次找到未排序部分的最小(或最大)元素,与未排序部分的第一个元素交换。在Java中,选择排序可以实现为一个简单的循环,但其时间复杂度为O(n^2)...

    用选择排序法对数组排序

    在这段代码中,`select_sort` 函数实现了选择排序算法的核心逻辑,而 `main` 函数则负责输入数据、调用排序函数以及输出排序结果。通过这个示例,我们可以看到选择排序算法的简洁性和直观性,同时也注意到它的时间...

    排序算法——选择排序.docx

    选择排序是一种简单直观的排序算法,它的工作原理可以分为以下几个步骤: 1. **理解选择排序**:选择排序从数组的第一个元素开始,遍历数组寻找当前未排序部分的最小(或最大)元素。找到后,将这个最小(或最大)...

Global site tag (gtag.js) - Google Analytics