LC: 1150. Check If a Number Is Majority Element in a Sorted Array
1150. Check If a Number Is Majority Element in a Sorted Array
Given an integer array nums sorted in non-decreasing order and an integer target, return true if target is a majority element, or false otherwise.
A majority element in an array nums is an element that appears more than nums.length / 2 times in the array.
Example 1:
Input: nums = [2,4,5,5,5,5,5,6,6], target = 5
Output: true
Explanation: The value 5 appears 5 times and the length of the array is 9.
Thus, 5 is a majority element because 5 > 9/2 is true.Example 2:
Input: nums = [10,100,101,101], target = 101
Output: false
Explanation: The value 101 appears 2 times and the length of the array is 4.
Thus, 101 is not a majority element because 2 > 4/2 is false.Constraints:
1 <= nums.length <= 10001 <= nums[i], target <= 109numsis sorted in non-decreasing order.
The Essence:
Es ist zu beachten, dass das Array sortiert ist. Wenn man den ersten Index des eingegebenen Elements findet, kann man zu diesen Index die Hälfte der Länge des Arrays addieren. Durch diese Addition erhält man den niedrigsten Index, bei dem das Subarray aus dieser Zahl enden darf. Außerdem würde es nicht der Mehrheitselement sein.
Details:
Wir können die Binäre Suche verwenden, um den ersten Index des Eingabe-Elements zu finden.
Solution(s):
Default Code:
Last updated