美文网首页
8、山脉数组的峰顶索引

8、山脉数组的峰顶索引

作者: ZeroForSpider | 来源:发表于2018-10-25 15:04 被阅读21次
    1、题目如下:

    我们把符合下列属性的数组 A 称作山脉:

    A.length >= 3
    存在 0 < i < A.length - 1 使得A[0] < A[1] < ... A[i-1] < A[i] > A[i+1] > ... > A[A.length - 1]
    给定一个确定为山脉的数组,返回任何满足 A[0] < A[1] < ... A[i-1] < A[i] > A[i+1] > ... > A[A.length - 1] 的 i 的值。

    示例 1:

    输入:[0,1,0]
    输出:1
    示例 2:

    输入:[0,2,1,0]
    输出:1

    提示:

    1、3 <= A.length <= 10000
    2、0 <= A[i] <= 10^6
    3、A 是如上定义的山脉

    2、解题思路:

    看似这道题目比较复杂,其实就是找一个数组中的最大值并返回最大值在该数组中的索引位置。

    3、代码如下:
    
    class Solution {
        public int peakIndexInMountainArray(int[] A) {
            int max=A[0],indexOfMax=0;
            for(int i=1;i<A.length;i++){
                if(max<A[i]) {
                    max=A[i];
                    indexOfMax=i;
                }
            }
           return indexOfMax;
        }
    }
    
    public class MainClass {
        public static int[] stringToIntegerArray(String input) {
            input = input.trim();
            input = input.substring(1, input.length() - 1);
            if (input.length() == 0) {
              return new int[0];
            }
        
            String[] parts = input.split(",");
            int[] output = new int[parts.length];
            for(int index = 0; index < parts.length; index++) {
                String part = parts[index].trim();
                output[index] = Integer.parseInt(part);
            }
            return output;
        }
        
        public static void main(String[] args) throws IOException {
            BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
            String line;
            while ((line = in.readLine()) != null) {
                int[] A = stringToIntegerArray(line);
                
                int ret = new Solution().peakIndexInMountainArray(A);
                
                String out = String.valueOf(ret);
                
                System.out.print(out);
            }
        }
    }
    
    
    4、运行结果如下:
    image.png

    相关文章

      网友评论

          本文标题:8、山脉数组的峰顶索引

          本文链接:https://www.haomeiwen.com/subject/mpxctqtx.html