Menu
CoddyTech

Top K Frequent Elements

整数の配列 nums と整数 k が与えられます。nums に最も多く出現する順に、出現頻度の高い k 個の値を返してください。2つの値の出現回数が同じ場合は、小さい値を先にします。

各値は nums で何回出現しても、答えには1回だけ含めます。また、k が異なる値の個数を超えることはありません。

関数

topKFrequent(nums: integer-array, k: integer) → integer-array
numsinteger-array
カウントする値
kinteger
返す値の数
戻り値integer-array
出現頻度が高い順に k 個の値を返し、頻度が同じ場合は値の小さい順に並べます。

制約

  • 1 ≤ nums.length ≤ 104
  • -104 ≤ nums[i] ≤ 104
  • 1 ≤ k であり、k は nums 内の異なる値の数以下です。

例

入力
nums = [4, 1, 4, 2, 1, 4, 3, 1, 4]k = 2
出力
[4, 1]
説明
4は4回、1は3回、2と3はそれぞれ1回出現します。最も頻度の高い2つの値は、4、次に1です。

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

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

ケース1

ケース2

ケース3

入力

nums = [4, 1, 4, 2, 1, 4, 3, 1, 4]
k = 2

期待値

[4, 1]