zoukankan      html  css  js  c++  java
  • 数组和字符串//至少是其他数字两倍的最大数

    在一个给定的数组nums中,总是存在一个最大元素 。

    查找数组中的最大元素是否至少是数组中每个其他数字的两倍。

    如果是,则返回最大元素的索引,否则返回-1。

    示例 1:

    输入: nums = [3, 6, 1, 0]
    输出: 1
    解释: 6是最大的整数, 对于数组中的其他整数,
    6大于数组中其他元素的两倍。6的索引是1, 所以我们返回1.
    class Solution {
        public int dominantIndex(int[] nums) {
            int max1=-1;
            int max2=-1;
            int maxIndex=0;
            for(int i=0;i<nums.length;i++){
                if(nums[i]>max1){
                    max2=max1;
                    max1=nums[i];
                    maxIndex=i;
                }else if(nums[i]>max2)
                    max2=nums[i];
            }
            return max1>=2*max2?maxIndex:-1;
        }
    }
    class Solution {
    public:
        int dominantIndex(vector<int>& nums) {
            int max1=0,max2=0,index;
            for(int i=0;i<nums.size();i++){
                if(nums[i]>max1){
                    max2=max1;
                    max1=nums[i];
                    index=i;
                }
                else if(nums[i]>max2){
                    max2=nums[i];
                }
            }
            return max1>=max2*2?index:-1;
        }
    };
  • 相关阅读:
    四则运算3.2
    第二周进度条
    构建之法阅读笔记02
    四则运算2
    第一周进度条
    构建之法阅读笔记01
    四则运算 Python
    第一周第二周学习进度条
    《构建之法》学习中疑问
    小学四则运算1.0
  • 原文地址:https://www.cnblogs.com/strawqqhat/p/10602350.html
Copyright © 2011-2022 走看看