leetcode-747. Largest Number Greater Than Twice of Others
747. Largest Number Greater Than Twice of Others
In a given integer array nums
, there is always exactly one largest element.
Find whether the largest element in the array is at least twice as much as every other number in the array.
If it is, return the index of the largest element, otherwise return -1.
Example 1:
Input: nums = [3, 6, 1, 0] Output: 1 Explanation: 6 is the largest integer, and for every other number in the array x, 6 is more than twice as big as x. The index of value 6 is 1, so we return 1.
Example 2:
Input: nums = [1, 2, 3, 4] Output: -1 Explanation: 4 isn't at least as big as twice the value of 3, so we return -1.
Note:
nums
will have a length in the range[1, 50]
.- Every
nums[i]
will be an integer in the range[0, 99]
.
此题做于 leetcode Weekly Contest 64
推荐大家去试一下这个每周比赛~
题意:
给定一个数组,找出数组里是否存在 最大的一个数 是 第二大数 的两倍还多。存在返回下标;不存在返回-1
思路:
这题就比较简单了,遍历找到最大的数字保存数字和下标,再遍历找到第二大的数字。按要求返回就可以了。
只需要O(n)
class Solution { public int dominantIndex(int[] nums) { int max = Integer.MIN_VALUE,flag=0; for (int i =0 ;i<nums.length;i++){ if(nums[i]>=max) { max = nums[i]; flag = i; } } Arrays.sort(nums); if(max >= 2*nums[nums.length-2]) return flag; return -1; } }
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 大模型 Token 究竟是啥:图解大模型Token
· 35岁程序员的中年求职记:四次碰壁后的深度反思
· 继承的思维:从思维模式到架构设计的深度解析
· 如何在 .NET 中 使用 ANTLR4
· 后端思维之高并发处理方案
· BotSharp + MCP 三步实现智能体开发
· AI团队比单打独斗强!CrewAI多智能体协作系统开发踩坑全解析
· 动物智能之数据标注员——狗篇
· 5. RabbitMQ 消息队列中 Exchanges(交换机) 的详细说明
· 「硬核实战」回调函数到底是个啥?一文带你从原理到实战彻底掌握C/C++回调函数