你的位置:首页 > 软件开发 > Java > 基本排序算法

基本排序算法

发布时间:2016-08-19 11:00:09
该部分是对算法(四)简单排序的总结。算法1、简单选择排序基本思想:  是一种最简单的排序算法,首先,找到数组中最小的那个元素,然后,将它和数组中的第一个元素交换位置。再次,在剩下的元素中找到最小的元素,将它与数组的第二个元素交换位置。如此往复,直到将整个数组排序。算法特点:对于长 ...

  该部分是对算法(四)简单排序的总结。

算法1、简单选择排序

基本思想:

  是一种最简单的排序算法,首先,找到数组中最小的那个元素,然后,将它和数组中的第一个元素交换位置。再次,在剩下的元素中找到最小的元素,将它与数组的第二个元素交换位置。如此往复,直到将整个数组排序。

算法特点:

  1. 对于长度为N的数组,选择排序需要大约N2/2次比较和N次交换。
  2. 运行时间和输入无关,这也导致了无论输入的数据是有序还是无序,执行的时间将是一样长。   
  3. 数据移动是最少的。
  4. 时间复杂度O(N2),空间复杂度O(1),不稳定。如:(5,4,5,2)排序后两个5的相对位置发生的变化。
基本排序算法基本排序算法
 1 package basic.sort; 2 /** 3  * 选择排序 4  *  5  * Created by Evan on 2016-8-18. 6 */ 7 public class SelectionSort { 8   public static void selectSort(int[] a) { 9     int i;10     int j;11     int temp = 0;12     int flag = 0;13     int n = a.length;14     for (i = 0; i < n; i++) {15       temp = a[i];16       flag = i;17       for (j = i + 1; j < n; j++) {18         if (a[j] < temp) {19           temp = a[j];20           flag = j;21         }22         23       }24       System.out.println(j);25       if (flag != i) {26         a[flag] = a[i];27         a[i] = temp;28       }29     }30 31   }32   public static void main(String[] args) {33     int i = 0;34     int a[] = {5,4,7,8,9,9,10,2,3,1};35     selectSort(a);36     for(i = 0; i< a.length;i++){37       System.out.print(a[i] + " ");38     }39   }40 }

 

海外公司注册、海外银行开户、跨境平台代入驻、VAT、EPR等知识和在线办理:https://www.xlkjsw.com

原标题:基本排序算法

关键词:排序

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。