请教大家一道java排序填空题

qq_29448025 2016-08-19 01:20:57
public static void main(String[] args) {
int[] arr = new int[100];
for(int i=0;i<arr.length;i++){
arr[i] = (int)(Math.random()*10000);
}
for(int i=1;i<arr.length;i++){
for(int j=0;j<arr.length-1;j++){
if(arr[j]>arr[i]){
int temp = arr[i];
for(int k=i-1; 【1】 ;k--){
【2】
}
arr[j]=temp;
}
}
}
}
...全文
329 4 打赏 收藏 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Vencc__ 2016-08-20
  • 打赏
  • 举报
回复
public static void main(String[] args) { int[] arr = new int[5]; for(int i=0;i<arr.length;i++){ arr[i] = (int)(Math.random()*10000); } for (int i=0;i<arr.length;i++){ System.out.print(arr[i]+" "); } System.out.println(); for(int i=1;i<arr.length;i++){ for(int j=0;j<arr.length-1;j++){ if(arr[j]>arr[i]){ int temp = arr[i]; for(int k=i-1; k!=j-1 ;k--){ if(k<j){ temp=arr[j]; break; } arr[k+1]=arr[k]; } arr[j]=temp; } } } }
虾米虾壳 2016-08-20
  • 打赏
  • 举报
回复
#2楼,运行了您的代码,排序错误。
虾米虾壳 2016-08-19
  • 打赏
  • 举报
回复
这是一个升序排序,下面的答案可以得到正确排序结果: 【1】: k > j - 1 || j > i 【2】:
if (j > i) {
							temp = arr[j];
							break;
						} else
							arr[k + 1] = arr[k];
更多技术可以关注:技术工兵
五味子1314 2016-08-19
  • 打赏
  • 举报
回复
int[] arr = new int[100]; for(int i=0;i<arr.length;i++){ arr[i] = (int)(Math.random()*10000); } for(int i=1;i<arr.length;i++){ for(int j=0;j<arr.length-1;j++){ if(arr[j]>arr[i]){ int temp = arr[i]; for(int k=i-1; k >= j; k--){ if(arr[k] > temp) { arr[k + 1] = arr[k]; arr[k] = temp; } } arr[j]=temp; } } } 升序排序

62,620

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧