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; } } //你的部分代码改成这样就可以了。
//补充运行结果。
慕的地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
提交
取消