ホームページ > ウェブフロントエンド > jsチュートリアル > Codewars - 要素が n 回以上出現した場合、その要素を削除します

Codewars - 要素が n 回以上出現した場合、その要素を削除します

Susan Sarandon
リリース: 2025-01-06 10:49:43
オリジナル
322 人が閲覧しました

ご挨拶

Codewars - Delete occurrences of an element if it occurs more than n times

このシリーズでは、Codewars の課題と私の思考プロセスを投稿しています。私は可能な限り JS と Node 18 を使用しています。明確にするために、私はそれらを公正に使用しています。

「要素が n 回以上出現した場合は削除します」。本質的には、順序を変更せずに、配列の中央にある部分をトリムします。

function deleteNth(arr,n){
  let counter = {"top": n , "undef": 0};

  for (let i = 0 ; i < arr.length ; i++ ){
    (counter[arr[i]]) ? null : counter[arr[i]] = 0;
    if (counter[arr[i]] < n){
      counter[arr[i]]++;
    } 
    else {
      arr[i] = undefined;
      counter.undef++;
    }
  }

  arr.sort((a,b) => 0);

  for (let i = 0 ; i < counter.undef ; i++){
    arr.pop();
  }

  return arr;
}
ログイン後にコピー

それは...うまくいきます。明らかに良いプラクティスに従っていないため、リファクタリングが必要ですが、次の課題に進むつもりです。

気をつけてね。水を飲みましょう???

以上がCodewars - 要素が n 回以上出現した場合、その要素を削除しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:dev.to
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート