定义一个方法,用于获得int数组中的最大值及对应的索引java
展开全部
public int[] getMaxIndex(int[] arr){
if(arr==null||arr.length==0){
return null;//如果数组为空 或者是长度为0 就返回null
}
int maxIndex=0;//假设第一个元素为最大值 那么下标设为0
int[] arrnew=new int[2];//设置一个 长度为2的数组 用作记录 规定第一个元素存储最大值 第二个元素存储下标
for(int i =0;i<arr.length-1;i++){
if(arr[maxIndex]<arr[i+1]){
maxIndex=i+1;
arrnew[0]=arr[maxIndex];
arrnew[1]=maxIndex;
}
}
return arrnew;
}
希望能帮到你 谢谢
if(arr==null||arr.length==0){
return null;//如果数组为空 或者是长度为0 就返回null
}
int maxIndex=0;//假设第一个元素为最大值 那么下标设为0
int[] arrnew=new int[2];//设置一个 长度为2的数组 用作记录 规定第一个元素存储最大值 第二个元素存储下标
for(int i =0;i<arr.length-1;i++){
if(arr[maxIndex]<arr[i+1]){
maxIndex=i+1;
arrnew[0]=arr[maxIndex];
arrnew[1]=maxIndex;
}
}
return arrnew;
}
希望能帮到你 谢谢
展开全部
public static Map<String,Object> getMax(int[] a){
int[] b = Arrays.copyOf(a,a.length);
Arrays.sort(b);
System.out.println("最大值:"+b[b.length-1]);
Map<String,Object> result = new HashMap<String,Object>();
result.put("maxValue", b[b.length-1]);
List<Integer> list = new ArrayList<Integer>();
for (int i = 0; i < a.length; i++)
{
if(a[i] == b[b.length-1]){
list.add(i);
}
}
result.put("index",list);
System.out.println("最大值索引:"+list.toString());
return result;
}
public static void main(String[] args)
{
int[] a = {1,2,3,5,5,4};
getMax(a);
}
运行结果:
最大值:5
最大值索引:[3, 4]
int[] b = Arrays.copyOf(a,a.length);
Arrays.sort(b);
System.out.println("最大值:"+b[b.length-1]);
Map<String,Object> result = new HashMap<String,Object>();
result.put("maxValue", b[b.length-1]);
List<Integer> list = new ArrayList<Integer>();
for (int i = 0; i < a.length; i++)
{
if(a[i] == b[b.length-1]){
list.add(i);
}
}
result.put("index",list);
System.out.println("最大值索引:"+list.toString());
return result;
}
public static void main(String[] args)
{
int[] a = {1,2,3,5,5,4};
getMax(a);
}
运行结果:
最大值:5
最大值索引:[3, 4]
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询