首页 > web前端 > js教程 > Codewars - 如果某个元素出现超过 n 次,则删除该元素的出现

Codewars - 如果某个元素出现超过 n 次,则删除该元素的出现

Susan Sarandon
发布: 2025-01-06 10:49:43
原创
284 人浏览过

问候。

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中文网其他相关文章!

来源:dev.to
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板