Menu
CoddyTech

Majority Element

やさしいハッシュpython iconjava iconcpp iconc iconjs icon+10

長さが n の整数配列 nums が与えられます。配列内に n / 2 回を超えて出現する値があり、その値を多数派要素と呼びます。それを返してください。配列の半分を超えて占める値は必ず一意であるため、答えはちょうど1つです。

関数

majorityElement(nums: integer-array) → integer
numsinteger-array
整数の配列で、ある値が配列の半分を超えて占めているもの
戻り値integer
n / 2 回を超えて出現する値

制約

  • 1 ≤ nums.length ≤ 104
  • -109 ≤ nums[i] ≤ 109
  • 1つの値がnums.length / 2回より多く出現します。

例

入力
nums = [3, 9, 3, 3, 4]
出力
3
説明
5つの要素の中に3が3回現れます。3は5 / 2 = 2.5より大きく、9と4はそれぞれ1回現れます。

lock icon提出時に隠しテスト+15件

challenge icon

発展問題

O(n)時間、O(1)の追加メモリで、配列をソートせずに多数派要素を見つけられますか?

コードをリセット
def majorityElement(nums):
    # ここにコードを書いてください
テストケース

ケース1

ケース2

入力

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

期待値

3