2016-12-03 99 views
-1

我是Java的新手,我創建了一個15個隨機整數的數組,並且我找到了最小值和最大值。我現在需要連接最大值和最小值的索引。查找隨機索引

package homework7; 

import java.util.Arrays; 
import java.util.Random; 

/** 
* 
* @author a 
*/ 
public class Homework7 { 

    public static void main(String[] args) { 
     // Name and Homework Number 
     System.out.println("A" + " \nHomework 7"); 

     int[] numbers = new int[15]; 
     //Generates 15 Random Numbers in the range 1 - 1000 
     for (int i = 0; i < numbers.length; i++) { 
      numbers[i] = (int) (Math.random() * 1000 - 1); 
     }//end for loop 
     System.out.println("\nContents of the Array:\n" + Arrays.toString(numbers)); 

     // Calling getMax() method for getting max value 
     int max = getMax(numbers); 
     System.out.println("\nMaximum Value " + max + " is located at index "); 

     // Calling getMin() method for getting min value 
     int min = getMin(numbers); 
     System.out.println("Minimum Value " + min + " is located at index "); 

    } 

    // Method for getting the maximum value 
    public static int getMax(int[] inputArray) { 
     int maxValue = inputArray[0]; 
     for (int i = 1; i < inputArray.length; i++) { 
      if (inputArray[i] > maxValue) { 
       maxValue = inputArray[i]; 
      } 
     } 
     return maxValue; 
    } 

    // Method for getting the minimum value 
    public static int getMin(int[] inputArray) { 
     int minValue = inputArray[0]; 
     for (int i = 1; i < inputArray.length; i++) { 
      if (inputArray[i] < minValue) { 
       minValue = inputArray[i]; 
      } 
     } 
     return minValue; 

    } 
} 
+3

那麼究竟是什麼問題? – Mureinik

+1

歡迎來到Stack Overflow!看起來你正在尋求作業幫助。雖然我們與本身沒有任何問題,請遵守這些[該做什麼和不該做什麼(http://meta.stackoverflow.com/questions/334822/how-do-i-ask-and-answer-homework-questions/338845#338845),並相應地編輯您的問題。 –

+0

找到的最小和這個隨機序列的最大值的指數 –

回答

0

添加一個變量來標記i,當你在if塊標記i新的最小值/最大值。

0

可能有不同的方法來解決,下面是可能的解決辦法,我能想到的:

  • 簡單的方式是添加更多的功能來掃描陣列在返回最小和最大價值的指標數組(這將是一個額外的掃描和更多的工作)。

  • 其他的方式可以增加全局變量的跟蹤,其中最大值和最小值出現指數。

  • 此外,作爲一個建議,你可以通過合併的兩個功能和更新數組作爲全局變量的最小值和最大值,以及更新功能單一的最小值和最大值。這將完成陣列的一次掃描。