五月综合人人91天堂久久人妻|欧美成人精品H超碰超碰网站大全|在线国产三级片丁香综合无码视频|国产不卡23区www.AV在线|国产91色哟在亚洲无码强奸在线|岛国黄色视屏久久免费看黄片|91无码视频国产综合23p|日本人成在线春色激情69

衡水天泰計(jì)算機(jī)培訓(xùn)學(xué)校
JAVA技術(shù)

Java中運(yùn)用數(shù)組的四種排序方法

來源:衡水北大青鳥 ????發(fā)布時(shí)間:2017-04-11 10:50 ????點(diǎn)擊:

JAVA中在運(yùn)用數(shù)組進(jìn)行排序功能時(shí),一般有四種方法:快速排序法、冒泡法、選擇排序法、插入排序法。

快速排序法主要是運(yùn)用了Arrays中的一個(gè)方法Arrays.sort()實(shí)現(xiàn)。

冒泡法是運(yùn)用遍歷數(shù)組進(jìn)行比較,通過不斷的比較將最小值或者最大值一個(gè)一個(gè)的遍歷出來。

選擇排序法是將數(shù)組的第一個(gè)數(shù)據(jù)作為最大或者最小的值,然后通過比較循環(huán),輸出有序的數(shù)組。

插入排序是選擇一個(gè)數(shù)組中的數(shù)據(jù),通過不斷的插入比較最后進(jìn)行排序。下面我就將他們的實(shí)現(xiàn)方法一一詳解供大家參考。

<1>利用Arrays帶有的排序方法快速排序

import java.util.Arrays;

public class Test2{

        public static void main(String[] args){

                int[] a={5,4,2,4,9,1};

                Arrays.sort(a);  //進(jìn)行排序

                for(int i: a){

                        System.out.print(i);

                }

        }

}

 

<2>冒泡排序算法

public static int[] bubbleSort(int[] args){//冒泡排序算法

                for(int i=0;i<args.length-1;i++){

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

                                if (args[i]>args[j]){

                                        int temp=args[i];

                                        args[i]=args[j];

                                        args[j]=temp;

                                }

                        }

                }

                return args;

        }

 

<3>選擇排序算法

public static int[] selectSort(int[] args){//選擇排序算法

                for (int i=0;i<args.length-1 ;i++ ){

                        int min=i;

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

                                if (args[min]>args[j]){

                                        min=j;

                                }

                        }

                        if (min!=i){

                        int temp=args[i];

                        args[i]=args[min];

                        args[min]=temp;        

                        }

                }

                return args;

        }

 

<4>插入排序算法

public static int[] insertSort(int[] args){//插入排序算法

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

                        for(int j=i;j>0;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中的四種排序方法。不同的方法效率不一樣,下面是不同的算法的比較和數(shù)據(jù)交換時(shí)的大O表示。

冒泡排序:比較O(N2) 數(shù)據(jù)交換O(N2)

選擇排序:比較O(N2) 數(shù)據(jù)交換O(N)

插入排序:比較O(N2) 復(fù)制數(shù)據(jù)O(N)

在實(shí)際應(yīng)用中,我們要盡量選擇效率高的算法。

掃一掃 加關(guān)注 精彩資訊在這里!

技能認(rèn)證

OSTA技能證書,全國可查,真實(shí)可信

多項(xiàng)熱門專業(yè)自由選擇

豐富的專業(yè)課程設(shè)置,完全自由選擇

畢業(yè)推薦就業(yè)

5重就業(yè)保障體系,4項(xiàng)就業(yè)指導(dǎo)服務(wù)

學(xué)校地址

最方便的乘車路線

在線咨詢

來校講解答疑

在線咨詢

399入學(xué)禮包

報(bào)名熱線

0318-2888080

  • 版權(quán)所有2015~2021 衡水天泰計(jì)算機(jī)培訓(xùn)學(xué)校
    北大青鳥課程咨詢電話:0318-2888080 官方網(wǎng)址:m.076735.cn
    地址:河北省衡水市育才街與勝利交叉口南行200米路東 郵編:053000
    (網(wǎng)站客服咨詢QQ:3142643279)
  • 網(wǎng)站備案/許可證號(hào):冀ICP備19035316號(hào)-1