题目:

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

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

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

示例 1:

输入: nums = [3, 6, 1, 0]
输出: 1
解释: 6是最大的整数, 对于数组中的其他整数,
6大于数组中其他元素的两倍。6的索引是1, 所以我们返回1.

示例 2:

输入: nums = [1, 2, 3, 4]
输出: -1
解释: 4没有超过3的两倍大, 所以我们返回 -1.

提示:

  1. nums 的长度范围在[1, 50].
  2. 每个 nums[i] 的整数范围在 [0, 100].

思路:

一次遍历找到最大的数max1和第二大的数max2,然后看看最大的数是不是大于等于第二大的数的两倍,如果是的话那么肯定满足最大数max1大于等于数组中其他数组的两倍了。

java代码:

class Solution {public int dominantIndex(int[] nums) {if (nums == null || nums.length == 0) {return -1;}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;}
}

由于水平有限,文章中难免会有一些错误,有纰漏之处恳请各位大佬不吝赐教!

及时更新最新文章和学习资料,一起来学习:

推荐阅读:

【leetcode-数组】买卖股票的最佳时机 II  - CSDN博客

【leetcode-数组】加一  - CSDN博客

【leetcode-数组】 旋转数组  - CSDN博客

【leetcode-数组】移动零  - CSDN博客

【leetcode-数组】两个数组的交集 II  - CSDN博客

【leetcode】搜索旋转排序数组  - CSDN博客

【leetcode-数组】合并两个有序数组  - CSDN博客

【leetcode-数组】至少是其他数字两倍的最大数相关推荐

  1. LeetCode 747. 至少是其他数字两倍的最大数

    1. 题目 在一个给定的数组nums中,总是存在一个最大元素 . 查找数组中的最大元素是否至少是数组中每个其他数字的两倍. 如果是,则返回最大元素的索引,否则返回-1. 示例 1: 输入: nums ...

  2. php 最大数字,PHP 计算至少是其他数字两倍的最大数的实现代码

    计算至少是其他数字两倍的最大数 在一个给定的数组nums中,总是存在一个最大元素 . 查找数组中的最大元素是否至少是数组中每个其他数字的两倍. 如果是,则返回最大元素的索引,否则返回-1. 示例 1: ...

  3. 【快乐水题】747. 至少是其他数字两倍的最大数

    原题: 力扣链接:747. 至少是其他数字两倍的最大数 题目简述: 给你一个整数数组 nums ,其中总是存在 唯一的 一个最大整数 . 请你找出数组中的最大元素并检查它是否 至少是数组中每个其他数字 ...

  4. LeetCode简单题之至少是其他数字两倍的最大数

    题目 给你一个整数数组 nums ,其中总是存在 唯一的 一个最大整数 . 请你找出数组中的最大元素并检查它是否 至少是数组中每个其他数字的两倍 .如果是,则返回 最大元素的下标 ,否则返回 -1 . ...

  5. LintCode 1053. 至少是其他数字两倍的最大数 JavaScript算法

    描述 在一个给定的数组nums中,总是存在一个最大元素 . 查找数组中的最大元素是否至少是数组中每个其他数字的两倍. 如果是,则返回最大元素的索引,否则返回-1. 说明 nums 的长度范围在[1, ...

  6. C#LeetCode刷题之#747-至少是其他数字两倍的最大数( Largest Number At Least Twice of Others)

    问题 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/3746 访问. 在一个给定的数组nums中,总是存在一个最大元素 ...

  7. 利用数组操作实现灰度图像放大两倍(C++opencv)

    在这篇博文中,我们要做的事情是利用数组元素操作来实现将一张图片放大两倍,我们使用图像内插方法中的近邻内插法来为扩大后的空闲元素赋值,比如这样的一个图像二维矩阵: 1    2    3         ...

  8. LeetCode数组高频题目整理

    刷题是应届生找工作不可缺少的部分,一种公认的刷题策略是按类别刷题,可是每个类别也有许多题,在有限的时间里到底该刷哪些题呢?个人根据LeetCode官方给出的每个题目的出现频率,整理并收录了每个类别里高 ...

  9. 从零开始刷Leetcode——数组(746.747)

    文章目录 747. 至少是其他数字两倍的最大数 746. 使用最小花费爬楼梯 747. 至少是其他数字两倍的最大数 在一个给定的数组nums中,总是存在一个最大元素 . 查找数组中的最大元素是否至少是 ...

最新文章

  1. 谈谈SaaS创业和企业服务的常识
  2. Python Type Hints 从入门到实践
  3. 诗和远方:无题(五十三)- 曾经写给一个妹子的诗
  4. 为什么物联网产品迫切需要良好的 UI/UX 设计?
  5. web前端开发初学者十问集锦(5)
  6. 哈夫曼编码+python实现
  7. 2.《Spring学习笔记-MVC》系列文章,讲解返回json数据的文章共有3篇,分别为:...
  8. 经典排序算法(四)--基数排序Radix Sort
  9. 添加谷歌账户显示与服务器,解决添加google同步帐户出错竟然可以这般简单!
  10. GitHub 实现了子资源完整性(SRI)
  11. Linux关闭密码登录
  12. virtualbox虚拟机linux共享文件夹,Virtualbox下linux虚拟机共享文件夹挂载
  13. php实现微信小程序登录(根据微信小程序接口更新最新教程)
  14. 渗透测试流程(一)(千峰学习笔记)
  15. Homebrew完美卸载软件及其依赖包
  16. 怎么快速无损的将FLV格式转换MP4格式
  17. java3d翻转纪念相册_抖音上很火的3D立体动态相册实现代码!
  18. 35岁以后的Android程序员出路在哪里?大牛最佳总结
  19. Android卡顿优化
  20. 汇聚优质AR应用开发者,技术助力AR领域繁荣生态

热门文章

  1. STM32V107VCT6,基于HAL库的用IO口模拟I2C的0.96寸OLED驱动
  2. c 怎么设置语言英文中文,教大家如何将CCleaner英文版设置为中文界面
  3. Windows下安装labelImg详细过程(无法在Anaconda Prompt和Anaconda Navigator中安装labelImg)
  4. mumu模拟器cpu占用高如何处理?
  5. echarts初始化中国地图(Map)
  6. 嵌入式软件架构设计----中控机NIOS软件系统架构设计说明书
  7. 好的计算机类的三本大学排名,【三本大学排名】_排名前十的公办三本大学名单...
  8. Python爬虫入门教程:下载某网站付费文档保存PDF
  9. IC ,CC系列,单片机芯片MSP430F
  10. [11012:9308:0912/112412.839:WARNING:dns_config_service_win.cc(661)] Failed to read DnsConfig.