Here you can find the source of maxIndex(double[] v)
Parameter | Description |
---|---|
v | a parameter |
public static int maxIndex(double[] v)
//package com.java2s; /** A collection of mathematical utility functions. * <p>//from w ww . j a v a2s . co m * Copyright (c) 2008 Eric Eaton * <p> * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * <p> * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * <p> * You should have received a copy of the GNU General Public License * along with this program. If not, see http://www.gnu.org/licenses/. * * @author Eric Eaton (EricEaton@umbc.edu) <br> * University of Maryland Baltimore County * * @version 0.1 * */ public class Main { /** Gets the index of the maximum element in the array. Returns the * first max index if there are multiple matching elements. * @param v * @return the index of the maximum element of v. */ public static int maxIndex(double[] v) { // error check the arguments if (v == null || v.length == 0) { throw new IllegalArgumentException("v cannot be empty."); } // set up double maxValue = maxValue(v); // determine the indices with the max value for (int i = 0; i < v.length; i++) { if (v[i] == maxValue) { return i; } } return -1; // unreachable code } /** Gets the index of the maximum element in the array. Returns the * first max index if there are multiple matching elements. * @param v * @return the index of the maximum element of v. */ public static int maxIndex(int[] v) { // error check the arguments if (v == null || v.length == 0) { throw new IllegalArgumentException("v cannot be empty."); } // set up int maxValue = maxValue(v); // determine the indices with the max value for (int i = 0; i < v.length; i++) { if (v[i] == maxValue) { return i; } } return -1; // unreachable code } /** Computes the maximum value in the given array. * @param values * @return the maximum value in the given array. */ public static int maxValue(int[] values) { int maxValue = Integer.MIN_VALUE; for (int val : values) { maxValue = (maxValue < val) ? val : maxValue; } return maxValue; } /** Computes the maximum value in the given array. * @param values * @return the maximum value in the given array. */ public static double maxValue(double[] values) { double maxValue = Double.MIN_VALUE; for (double val : values) { maxValue = (maxValue < val) ? val : maxValue; } return maxValue; } }