Menu
CoddyTech

Majority Element

FácilHashingpython iconjava iconcpp iconc iconjs icon+10

Você recebe um array de números inteiros nums de comprimento n. Um valor aparece nele mais de n / 2 vezes, e esse valor é chamado de elemento majoritário. Retorne-o. Um valor que ocupa mais da metade do array é sempre único, então há exatamente uma resposta.

Função

majorityElement(nums: integer-array) → integer
numsinteger-array
o array de inteiros, com um valor ocupando mais da metade dele
Retornainteger
o valor que aparece mais de n / 2 vezes

Restrições

  • 1 ≤ nums.length ≤ 104
  • -109 ≤ nums[i] ≤ 109
  • Um valor aparece mais de nums.length / 2 vezes.

Exemplos

Entrada
nums = [3, 9, 3, 3, 4]
Saída
3
Explicação
3 aparece três vezes em cinco elementos. Três é maior que 5 / 2 = 2.5, e 9 e 4 aparecem uma vez cada.

lock icon+15 testes ocultos ao enviar

challenge icon

Para ir além

Você consegue encontrar o elemento majoritário em O(n) de tempo, usando O(1) de memória extra, sem ordenar o array?

Redefinir código
def majorityElement(nums):
    # Escreva o código aqui
Casos de teste

Caso 1

Caso 2

Entrada

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

Esperado

3