为了账号安全,请及时绑定邮箱和手机立即绑定

看不懂这个简单的排序算法,求说明

看不懂这个简单的排序算法,求说明

易丿天 2016-07-13 12:16:21
package com.imooc.look;import java.util.Arrays;public class 排序算法 { /** * @param args */ public static void main(String[] args) { int scors[]= {18,34,56,23,45,10,7,34,46,23}; int arr[] = new int[101]; for (int i = 0; i < scors.length-1; i++) { arr[scors[i]] = 1; } for(int i=0,j=0;i<=arr.length-1&&j<=scors.length-1;i++){ if(arr[i] == 1){ scors[j++] = i; } } System.out.println(Arrays.toString(scors)); }}
查看完整描述

2 回答

已采纳
?
损失函数

TA贡献114条经验 获得超93个赞

int scors[]= {18,34,56,23,45,10,7,34,46,23};//创建分数数组
int arr[] = new int[101];//新建一个长度为101的数组,为什么是101,因为分数最大值是100
for (int i = 0; i < scors.length-1; i++) {//遍历scors数组
arr[scors[i]] = 1;//关键:将分数作为arr数组的下标存储,比如scors为18那么arr[18]=1
}
for(int i=0,j=0;i<=arr.length-1&&j<=scors.length-1;i++){//遍历arr数组
if(arr[i] == 1){
scors[j++] = i;//将arr数组值为1的下标(也就是分数)赋值给scors数组,这相当与就是将scors数组排序。
}
}

望采纳!

查看完整回答
1 反对 回复 2016-07-13
  • 2 回答
  • 0 关注
  • 1665 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信