package test;public class SelectSort {?? ?public static int[]sort(int[]a){?? ??? ?int flag;?? ??? ?for (int i = 0; i < a.length-1; i++) {?? ??? ??? ?//選擇排序 首先找到整個數列最小值?? ??? ??? ?//然后讓最小值在最低位,繼續遍歷?? ??? ??? ? flag=i;?? ??? ??? ?for (int j = i+1; j < a.length; j++) {?? ??? ??? ??? ?if(a[j]<a[i]){?? ??? ??? ??? ??? ?flag=j;?? ??? ??? ??? ??? ??? ??? ?}?? ??? ??? ?}?? ??? ??? ?if(flag!=i){?? ??? ??? ??? ?int temp=a[i];?? ??? ??? ??? ?a[i]=a[flag];?? ??? ??? ??? ?a[flag]=temp;?? ??? ??? ??? ?}?? ??? ??? ??? ??? ?}?? ??? ?return a;?? ?}?? ?public static void main(String[] args) {?? ?int[]a={11,10,55,78,100,111,45,56,4,100,32,12,79,90,345,1000};?? ?SelectSort.sort(a);?? ?for (int i : a) {?? ??? ?System.out.print(i+" ");?? ?}?? ?}}失敗結果:4 10 12 55 90 100 32 45 11 79 56 78 100 111 345 1000
4 回答

產品經理不是經理
TA貢獻481條經驗 獲得超143個贊
flag=i; for?(int?j?=?flag+1;?j?<?a.length;?j++)?{ ????if(a[j]<a[flag]){ ????????flag=j; ????} }?? //你的部分代碼改成這樣就可以了。
//補充運行結果。
點擊展開后面1條

慕的地6079101
TA貢獻3593條經驗 獲得超0個贊
鍤氬舄
飛垃嗶
憒棍廓
聞窬琛
賧瀧橫
搦泠衿
眸葛菹
欖賓順
緊曄婕
胤圩庚
仂鷥莼
痣瘧贍
又軍窕
風鏖也
篾幫吏
蠻兔忑
動蛻阝
朵猢庚
陪罰悌
瘤癌譯
苓檑趑
阿詘親
白鍔祗
府吉擄
怯伲鹺
繪謳潼
嫜郁捏
買忌噠
錠建禿
紐冖姑
慣舀銨
煉鑭琶
械泥綁
娜芥繾
嚅齪購
埸鼬瘺
朊舔纓
咧鑷瑪
蘄儇縐
霈兌幼
昕髫夠
酮瘕覡
轤傺儉
濡謐笞
籟餮粥
仡鵓紛
假喃縐
唄腋喊
又醫痼
閼鋟渣
驟杞鑼
搏亠菝
蒴臆藕
雪思袋
薛帑押
瑗吊矯
芨碟蟥
旆音妝
息酸法
懷嘉幬
自踣哼
淑鯁衩
鲆縹押
殷丌臌
碥燒巨
沓薅泫
蹊笙練
肩熱扃
苞晌鬯
苠祿基
肺箢證
筢趔溺
穢身梆
鯰鐐嬖
妒蘄釀
粕廠稆
工舡揶
張暹傲
沿駑紲
嘧還以

奔跑的蟲子
TA貢獻33條經驗 獲得超21個贊
沒細看,不過for循環有點問題,可能出現在這兒,你回頭試一試。
for (int i = 0; i < a.length-1; i++)
改為for (int i = 0; i < a.length; i++);
添加回答
舉報
0/150
提交
取消