Menu
CoddyTech

Majority Element

Дан массив целых чисел nums длины n. Одно значение встречается в нём более n / 2 раз и называется элементом большинства. Верните его. Значение, встречающееся более чем в половине массива, всегда единственное, поэтому ответ ровно один.

Функция

majorityElement(nums: integer-array) → integer
numsinteger-array
массив целых чисел, в котором одно значение занимает более половины элементов
Возвращаетinteger
значение, которое встречается более чем n / 2 раз

Ограничения

  • 1 ≤ nums.length ≤ 104
  • -109 ≤ nums[i] ≤ 109
  • Одно значение встречается более чем nums.length / 2 раз.

Примеры

Ввод
nums = [3, 9, 3, 3, 4]
Вывод
3
Пояснение
3 встречается три раза в пяти элементах. Три — это больше, чем 5 / 2 = 2.5, а 9 и 4 встречаются по одному разу.
challenge icon

Дополнительный вопрос

Можете ли вы найти все значения, которые встречаются более чем n / 3 раз, за время O(n) и используя O(1) дополнительной памяти?

Сбросить код
def majorityElement(nums):
    # Напишите код здесь

Тест #1

Тест #2

Аргумент

nums = [3, 9, 3, 3, 4]

Ожидаемый вывод

3