码迷,mamicode.com
首页 > 编程语言 > 详细

数组之排序

时间:2020-07-24 10:07:24      阅读:101      评论:0      收藏:0      [点我收藏+]

标签:style   数字   常用   bubble   color   一个   稳定性   空间   冒泡   

常用排序算法:

  冒泡排序

  插入排序

  快速排序

  选择排序

排序算法的时间&&空间复杂度

排序算法的稳定性

冒泡排序——bubbleSort

是一种简单的排序算法,重复地走访要排序的数列,一次比较两个元素,如果它们的顺序错误就把他们交换。走访数列的工作是重复的进行直到没有需要交换。

如果两个数关系不正确——交换——重复1、2步——如果走了一遍发现没有产生交换说明排序完成

时间复杂度 O(n^2) 最好O(n)

选择排序——selectSort

将一个值跟数组剩余依次比较,每次得到当前剩余数中最小/大元素放到数组开头

Public class sort{

public static void bubbleSort(int array[]){

  int t = 0;

  for(int i = 0; i < array.length; i++){

    for(int j = 0; j < array.length-1-i; j++){  //因为每遍历一次都会最少排好一个数字

      if(array[j+1] < array[j])

        swap(array[j], array[j+1]);  //两值交换如果不引入新的变量,可以用a=a+b; b = a-b; a = a-b;

    }

  }

}

 

public static void selectSort(int array[]){

  for(int i = 0; i<array.length;i++){

    for(int j = i+1; j<array.length; j++){

      if(array[i] > array[j])  swap(array[i], array[j]);

    }

  }

}

 

public static void main(String[] args){

  int[] array = new int[]{4,7,1,2,9,3,5,8,6};

  bubbleSort(a);

  for(int i = 0; i<array.length; i++){  //输出数组

    System.out.print(array[i] + "\t");

  }

}

}

数组之排序

标签:style   数字   常用   bubble   color   一个   稳定性   空间   冒泡   

原文地址:https://www.cnblogs.com/cherry-BAIL/p/13369780.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!