簡體   English   中英

在數組中找到最大值

[英]finding highest value in an array

這是我的數組代碼:

int h = 0;
int i = 1;
while (h < a.length - 1){
    if (a[h] < a[i]){
        h++;
        i++;
    }
    if (a[h] > a[i]){
        a[i] = a[h];
        a[h] = a[i + 1];
    }
}
if (h == a.length - 1){
System.out.println(a[i]);
}

我不知道我在做什么錯。 我需要學校作業的答案。 我在學校的計算機科學課上。

檢查一下,我不確定您使用的是哪種語言,但是我會選擇使用for循環而不是while

int h = 0;
int i = 0;
int v = null;
while (h < a.length - 1){
    if(v == null || v < a[i])
    {
        v = a[i];
        h = i;
    }
    i++;
}
if (v != null){
   System.out.println(v); //for value
   System.out.println(h); //highest index
   System.out.println(a[h]); //for value from array a
}

嘗試創建此方法

  public int max(int[] a) {
        int temp = a[0];

        for (int i = 1; i < a.length; i++) {
            if (a[i] > temp) {
                temp = a[i];
            }
        }
        return temp;
    }

和你的主要方法

int[] a = new int[3];
        a[0]=2;
        a[1]=3;
        a[2]=54;
System.out.println("Highest value is "+ max(a));
int max = a[0];
int index = 0;
for (int i = 1; i < a.length; i++) {
    if (a[i] > max) {
        max = a[i];
        index = i;
    }
}
Arrays.sort(a);
System.out.println(a[a.length - 1]);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM