溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

java怎么對數(shù)組進行排序

發(fā)布時間:2020-06-12 19:29:24 來源:億速云 閱讀:160 作者:鴿子 欄目:編程語言

java中幾種數(shù)組排序的方法:

1、使用Arrays.sort()排序

Arrays.sort()排序方法在java中是最簡單且最常用的排序方法。

int []arr1= {45,34,59,55};
Arrays.sort(arr1);//調(diào)用方法排序即可

Arrays.sort()的使用主要分為對基本數(shù)據(jù)類型數(shù)組的排序和對對象數(shù)組的排序。

2、冒泡排序

簡單來說,冒泡排序就是重復地走訪過要排序的數(shù)列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數(shù)列的工作是重復地進行直到?jīng)]有再需要交換,也就是說該數(shù)列已經(jīng)排序完成。

//array[]為待排序數(shù)組,n為數(shù)組長度
void BubbleSort(int array[], int n)
{
    int i, j, k;
    for(i=0; i<n-1; i++)
        for(j=0; j<n-1-i; j++)
        {
            if(array[j]>array[j+1])
            {
                k=array[j];
                array[j]=array[j+1];
                array[j+1]=k;
            }
        }
}

3、選擇排序

先找到最小元素所在位置的索引,然后將該元素與第一位上的元素進行交換。

int arr3[]= {23,12,48,56,45};
    for(int i=0;i<arr3.length;i++) {
		int tem=i;
                //將數(shù)組中從i開始的最小的元素所在位置的索引賦值給tem
		for(int j=i;j<arr3.length;j++) {
			if(arr3[j]<arr3[tem]) {
				tem=j;
			}
		}
		//上面獲取了數(shù)組中從i開始的最小值的位置索引為tem,利用該索引將第i位上的元素與其進行交換
		int temp1=arr3[i];
		arr3[i]=arr3[tem];
		arr3[tem]=temp1;
	}

4、反轉(zhuǎn)排序

將原數(shù)組按逆序排列

//將數(shù)組第i位上的元素與第arr.length-i-1位上的元素進行交換
int []arr4={23,12,48,56,45};
	for(int i=0;i<arr4.length/2;i++) {
		int tp=arr4[i];
		arr4[i]=arr4[arr4.length-i-1];
		arr4[arr4.length-i-1]=tp;
	}

5、直接插入排序

int []arr5={23,12,48,56,45};
	for (int i = 1; i < arr5.length; i++) {
		for (int j = i; j > 0; j--) {
			if (arr5[j - 1] > arr5[j]) {//大的放后面
				int tmp = arr5[j - 1];
				arr5[j - 1] = arr5[j];
				arr5[j] = tmp;
			}
		}
	}

以上就是java數(shù)組如何排序的詳細內(nèi)容,更多請關注億速云其它相關文章!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI