成人AV在线无码|婷婷五月激情色,|伊人加勒比二三四区|国产一区激情都市|亚洲AV无码电影|日av韩av无码|天堂在线亚洲Av|无码一区二区影院|成人无码毛片AV|超碰在线看中文字幕

Java int數(shù)組從大到小排序 為什么java的arrays類的sort方法對對象數(shù)組采用合并排序,而對基本類型數(shù)組卻采用快速排序?

為什么java的arrays類的sort方法對對象數(shù)組采用合并排序,而對基本類型數(shù)組卻采用快速排序?Java中arrays類的sort方法默認情況下是按升序?qū)緮?shù)據(jù)類型進行排序,例如sort(int

為什么java的arrays類的sort方法對對象數(shù)組采用合并排序,而對基本類型數(shù)組卻采用快速排序?

Java中arrays類的sort方法默認情況下是按升序?qū)緮?shù)據(jù)類型進行排序,例如sort(int[]ARR)和sort(double[]在JDK API中可以找到以下內(nèi)容:

從圖中可以看出,倒數(shù)第二行和第三行中的對象數(shù)組的排序也是默認的升序,但是在輸入之前在這行代碼中,您需要為要排序的對象數(shù)組完成一個可比較的接口。以此為標準進行排序。詳見下圖:

java如何實現(xiàn)快速排序?

快速排序原則:選擇一個鍵值作為基準值。小于基準值的順序在左邊(一般無序),大于基準值的順序在右邊(一般無序)。通常,選擇序列的第一個元素。

一個循環(huán):從后向前比較,與參考值和最后一個值進行比較,如果交換位置小于參考值,則繼續(xù)比較下一個,直到找到小于參考值的第一個值。找到此值后,將其從前到后進行比較。如果存在大于參考值的值,則交換位置。如果沒有,則繼續(xù)比較下一個值,直到找到比參考值大的第一個值。直到從前面到后面的比較索引>;從后面到前面的比較索引結(jié)束第一個循環(huán)。此時,左右兩側(cè)依次為參考值。

然后比較左右順序并重復上述循環(huán)。