欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

java排序代碼,選擇排序java代碼

java怎么讓數(shù)組的數(shù)字從大到小排序?

將數(shù)字從大到小排序的方法:

專注于為中小企業(yè)提供網(wǎng)站建設(shè)、成都網(wǎng)站建設(shè)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)合川免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了1000多家企業(yè)的穩(wěn)健成長(zhǎng),幫助中小企業(yè)通過(guò)網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

例如簡(jiǎn)一點(diǎn)的冒泡排序,將第一個(gè)數(shù)字和后面的數(shù)字逐個(gè)比較大小,如果小于,則互換位置,大于則不動(dòng)。此時(shí),第一個(gè)數(shù)為數(shù)組中的最大數(shù)。然后再將第二個(gè)數(shù)與后面的數(shù)逐個(gè)比較,以次類推。

示例代碼如下:?

public?class?Test?{?

public?static?void?main(String[]?args)?{?

int?[]?array?=?{12,3,1254,235,435,236,25,34,23};?

int?temp;?

for?(int?i?=?0;?i??array.length;?i++)?{?

for?(int?j?=?i+1;?j??array.length;?j++)?{?

if?(array[i]??array[j])?{?

temp?=?array[i];?

array[i]?=?array[j];?

array[j]?=?temp; //?兩個(gè)數(shù)交換位置?

}?

}?

}?

for?(int?i?=?0;?i??array.length;?i++)?{?

System.out.print(array[i]+"??");?

}?

}?

}

數(shù)組對(duì)于每一門編程語(yǔ)言來(lái)說(shuō)都是重要的數(shù)據(jù)結(jié)構(gòu)之一,當(dāng)然不同語(yǔ)言對(duì)數(shù)組的實(shí)現(xiàn)及處理也不盡相同。

Java 語(yǔ)言中提供的數(shù)組是用來(lái)存儲(chǔ)固定大小的同類型元素。

你可以聲明一個(gè)數(shù)組變量,如 numbers[100] 來(lái)代替直接聲明 100 個(gè)獨(dú)立變量 number0,number1,....,number99

擴(kuò)展資料

Java中利用數(shù)組進(jìn)行數(shù)字排序一般有4種方法:

1、選擇排序是先將數(shù)組中的第一個(gè)數(shù)作為最大或最小數(shù),然后通過(guò)循環(huán)比較交換最大數(shù)或最小數(shù)與一輪比較中第一個(gè)數(shù)位置進(jìn)行排序。

2、冒泡排序也是先將數(shù)組中的第一個(gè)數(shù)作為最大或最小數(shù),循環(huán)比較相鄰兩個(gè)數(shù)的大小,滿足條件就互換位置,將最大數(shù)或最小數(shù)沉底。

3、快速排序法主要是運(yùn)用Arrays類中的Arrays.sort方法()實(shí)現(xiàn)。

4、插入排序是選擇一個(gè)數(shù)組中的數(shù)據(jù),通過(guò)不斷的插入比較最后進(jìn)行排序。

在java編程中如何對(duì)數(shù)組進(jìn)行排序,并輸出排序后的數(shù)組及原數(shù)組下標(biāo)值

java變成對(duì)數(shù)組進(jìn)行排序可以使用ArraySort方法,保存源數(shù)組下標(biāo)值可以存入map中,如下代碼:

import?java.util.ArrayList;

import?java.util.Arrays;

import?java.util.HashMap;

import?java.util.List;

public?class?ceshi?{

public?static?void?main(String[]?args)?{

int?n?=?5;

int[]?a?=?{?8,?5,?4,?6,?2,?1,?7,?9,?3?};

HashMap?map?=?new?HashMap();

for?(int?i?=?0;?i??a.length;?i++)?{

map.put(a[i],?i);?//?將值和下標(biāo)存入Map

}

//?排列

List?list?=?new?ArrayList();

Arrays.sort(a);?//?升序排列

for?(int?i?=?0;?i??a.length;?i++)?{

list.add(a[i]);

}

for?(Object?object?:?list)?{

System.out.print(object?+?",");

}

System.out.println();

//?查找原始下標(biāo)

for?(int?i?=?0;?i??n;?i++)?{

System.out.print(map.get(a[i])?+?",");

}

}

}

運(yùn)行結(jié)果如下:

請(qǐng)用java語(yǔ)言編寫排序程序。

參考代碼如下,可以按需求自己修改

import?java.util.Date;

public?class?SortThread?{

public?static?void?main(String[]?args)?{

//產(chǎn)生一個(gè)隨機(jī)數(shù)組

int[]?ary?=?getArray();

//啟動(dòng)冒泡排序線程

new?Thread(new?MaoPao(ary)).start();

//啟動(dòng)快速排序線程

new?Thread(new?KuaiSu(ary)).start();

}

private?static?int[]?getArray()?{

//建議數(shù)字n不要超過(guò)1百萬(wàn),十萬(wàn)左右就好了

int?n?=?(int)?(Math.random()*1000000)+11;

int[]?ary=?new?int[n];

System.out.println("n的值是"?+?n);

for?(int?i?=?0;?i??ary.length;?i++)?{

ary[i]?=?(int)?(Math.random()*100000);

}

return?ary;

}

}

//冒泡排序

class?MaoPao?implements?Runnable?{

int[]?ary;

public?MaoPao(int[]?ary)?{

this.ary?=?ary;

}

@Override

public?void?run()?{

long?st?=?System.currentTimeMillis();

System.out.println(new?Date()?+?"冒泡排序線程:開(kāi)始執(zhí)行排序");

for?(int?i?=?0;?i??ary.length?-?1;?i++)?{

for?(int?j?=?0;?j??ary.length?-?i?-?1;?j++)?{

if?(ary[j]??ary[j?+?1])?{

int?temp?=?ary[j];

ary[j]?=?ary[j?+?1];

ary[j?+?1]?=?temp;

}

}

}

long?et?=?System.currentTimeMillis();

System.out.println(new?Date()?+?"冒泡排序線程完成排序,耗費(fèi)時(shí)間"?+?(et?-?st)?+?"毫秒");

for?(int?i?=?0;?i??ary.length;?i++)?{

System.out.println(ary[i]+"?");

}

}

}

//快速排序

class?KuaiSu?implements?Runnable?{

int[]?ary;

public?KuaiSu(int[]?ary)?{

this.ary?=?ary;

}

@Override

public?void?run()?{

long?st?=?System.currentTimeMillis();

System.out.println(new?Date()?+?"快速排序線程:開(kāi)始執(zhí)行排序");

quickSort(ary,?1,?ary.length);

long?et?=?System.currentTimeMillis();

System.out.println(new?Date()?+?"快速排序線程排序完成,耗費(fèi)時(shí)間"?+?(et?-?st)?+?"毫秒");

for?(int?i?=?0;?i??ary.length;?i++)?{

System.out.println(ary[i]+"?");

}

}

public?static?int?Partition(int?a[],?int?p,?int?r)?{

int?x?=?a[r?-?1];

int?i?=?p?-?1;

int?temp;

for?(int?j?=?p;?j?=?r?-?1;?j++)?{

if?(a[j?-?1]?=?x)?{

i++;

temp?=?a[j?-?1];

a[j?-?1]?=?a[i?-?1];

a[i?-?1]?=?temp;

}

}

temp?=?a[r?-?1];

a[r?-?1]?=?a[i?+?1?-?1];

a[i?+?1?-?1]?=?temp;

return?i?+?1;

}

public?static?void?quickSort(int?a[],?int?p,?int?r)?{

if?(p??r)?{

int?q?=?Partition(a,?p,?r);

quickSort(a,?p,?q?-?1);

quickSort(a,?q?+?1,?r);

}

}

}

新聞標(biāo)題:java排序代碼,選擇排序java代碼
轉(zhuǎn)載來(lái)于:http://chinadenli.net/article11/dsiesdd.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機(jī)動(dòng)態(tài)網(wǎng)站面包屑導(dǎo)航網(wǎng)站建設(shè)品牌網(wǎng)站設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司