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

排序大集合java

时间:2019-04-16 20:15:49      阅读:196      评论:0      收藏:0      [点我收藏+]

标签:strong   ann   mic   array   for   span   void   问题   print   

今日面试被问到排序问题,发现自己的不足,特来查漏补缺:

首先是各大排序算法的总结表

排序算法大合集 
排序算法 平均时间复杂度 最好情况 最坏情况 空间复杂度 稳定性
冒泡排序 Ο(n2) Ο(n) Ο(n2) Ο(1)  稳定
选择排序 Ο(n2) Ο(n2) Ο(n2) Ο(1)  不稳定
插入排序 Ο(n2) Ο(n) Ο(n2) Ο(1)  稳定
希尔排序 Ο(nlogn) Ο(nlog2n) Ο(nlog2n) Ο(1)  不稳定
归并排序 Ο(nlogn) Ο(nlogn) Ο(nlogn) Ο(n) 稳定 
快速排序 Ο(nlogn) Ο(nlogn) Ο(n2) Ο(logn) 不稳定 
堆排序 Ο(nlogn) Ο(nlogn) Ο(nlogn) Ο(1) 不稳定 
计数排序 Ο(n+k) Ο(n+k) Ο(n+k) Ο(k) 稳定 
桶排序 Ο(n+k) Ο(n+k) Ο(n2) Ο(n+k) 稳定 
基数排序 Ο(n*k) Ο(n*k) Ο(n*k) Ο(n+k) 稳定 

 

首先用自己最近实战的java语言来进行一个排序问题编程:

问题:对输入的n个数排序并输出

输入:两行,第一行为n;第二行为需要进行排序的n个数

输出:一行,即排序后的数

 1 import java.util.Scanner;
 2 import java.util.Arrays;
 3 public class Main{
 4     public static void main(String [] args){
 5         Scanner in = new Scanner(System.in);
 6         while(in.hasNext()){
 7              int n = in.nextInt();
 8              int[] arr = new int[n];
 9              for(int i = 0;i<n;i++){
10                  arr[i] = in.nextInt();
11              }
12              Arrays.sort(arr);
13              for(int i = 0;i<n;i++)
14                  System.out.print(arr[i]+" ");
15               System.out.println();
16               }
17         }
18 }

 

排序大集合java

标签:strong   ann   mic   array   for   span   void   问题   print   

原文地址:https://www.cnblogs.com/10081-AA/p/10719673.html

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