leetcode 747. 至少是其他數字兩倍的最大數
在看題目的示例2時,給了我啟發,要想一個數是其他所有數的2倍以上,那它只需要是第2大的數兩倍以上。所以就變成了遍歷一遍陣列,找出其中的最大數和第2大的數,然後比較是不是2倍。
用時0ms
class Solution {
public:
int dominantIndex(vector<int>& nums) {
if(nums.size() == 1)
return 0;
int max1 = INT_MIN;
int max2 = INT_MIN;
int index = 0;
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];
}
}
if(max1 >= 2*max2)
return index;
return -1;
}
};
相關文章
- 在一個給定的陣列中查詢陣列中的最大元素是否至少是陣列中每個其他數字的兩倍, 如果是,則返回最大元素的索引,否則返回-1。陣列索引
- 最大公約數,最小公倍數
- 最小公倍數&&最大公約數
- 求兩個正整數的最大公約數與最小公倍數--C#實現C#
- LeetCode-179-最大數LeetCode
- 最大公約數和最小公倍數
- 最小公倍數和最大公約數
- Leetcode兩數相加LeetCode
- LeetCode——兩數相加LeetCode
- LeetCode - 兩數之和LeetCode
- LeetCode:兩數之和LeetCode
- LeetCode 2——兩數相加LeetCode
- LeetCode 29——兩數相除LeetCode
- python LeetCode 兩數相除PythonLeetCode
- leetcode #1 兩數之和LeetCode
- LeetCode 1 兩數之和LeetCode
- LeetCode之兩數之和LeetCode
- LeetCode-兩數之和LeetCode
- LeetCode-兩數相加LeetCode
- 【LeetCode】2 兩數相加LeetCode
- 【leetcode】【2、兩數相加】LeetCode
- JavaScript保留兩位或者其他位數小數JavaScript
- 【數學問題】最大公約數與最小公倍數
- C++:最小公倍數與最大公約數C++
- 相鄰兩數的最大差值
- LeetCode: Two sum(兩數之和)LeetCode
- LeetCode-1. 兩數之和LeetCode
- leetcode 2. 兩數相加LeetCode
- leetcode-0001 兩數之和LeetCode
- LeetCode 2.兩數相加LeetCode
- LeetCode 1. 兩數之和LeetCode
- LeetCode - 1365 - 有多少小於當前數字的數字LeetCode
- LeetCode 面試題16.07[最大數值]LeetCode面試題
- LeetCode-485-最大連續 1 的個數LeetCode
- 用遞迴求出最大公約數和最小公倍數,求補充最小公倍數的遞迴用法遞迴
- LeetCode1365有多少小於當前數字的數字LeetCode
- LeetCode 13[羅馬數字轉整數]LeetCode
- LeetCode 第二題兩數相加LeetCode