問候。
我在這個系列中發布了 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中文網其他相關文章!