首页 > 编程 > Java > 正文

【郑州尚学堂】JAVA常用4种排序方法

2019-11-06 08:07:57
字体:
来源:转载
供稿:网友

当然 程序中最简单的使用就是:快速排序和冒泡排序,插入排序的使用更具有技巧性,选择排序则过于复杂,冗杂的代码不利于程序的使用和软件的测试。

  快速排序法主要是运用了Arrays中的一个方法Arrays.sort()实现。

  冒泡法是运用遍历数组进行比较,通过不断的比较将最小值或者最大值一个一个的遍历出来。

  选择排序法是将数组的第一个数据作为最大或者最小的值,然后通过比较循环,输出有序的数组。

  插入排序是选择一个数组中的数据,通过不断的插入比较最后进行排序。下面我就将他们的实现方法一一详解供大家参考。

第一

利用Arrays带有的排序方法快速排序

 import java.util.Arrays;     public class Test{               public static void main(String[] args){            int[] a={5,4,2,4,9,1};                        Arrays.sort(a);  //进行排序            for(int i: a){                System.out.PRint(i);               }              }    }

第二

冒泡排序算法

 public static int[] bubbleSort(int[] args){  //冒泡排序算法         for(int i=0;i<args.length-1;i++){                    for(int j=i+1;jargs[j]){                       int temp=args[i];                      args[i]=args[j];                      args[j]=temp;                                  }                         }                }                  return args;       }

第三

选择排序算法

 public static int[] selectSort(int[] args){         //选择排序算法            for (int i=0;i<args.length-1 i++ ){                  int min=i;                     for (int j=i+1;jargs[j]){                  min=j;                                 }                           }                if (min!=i){              int temp=args[i];             args[i]=args[min];               args[min]=temp;                       }        }            return args;     }

第四

插入排序算法

 public static int[] insertSort(int[] args){//          for(int i=1;i0;j--){                           if (args[j]<args[j-1]){                 int temp=args[j-1];              args[j-1]=args[j];               args[j]=temp;              }              else break;       }    }                              return args;   }   

  以上就是java中的四种排序方法。

  不同的方法效率不一样,下面是不同的算法的比较和数据交换时的大O表示。

  冒泡排序:比较O(N2) 数据交换O(N2)

  选择排序:比较O(N2) 数据交换O(N)

  插入排序:比较O(N2) 复制数据O(N)

  在实际应用中,我们要尽量选择效率高的算法。


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表