使用遞迴在 JavaScript 陣列中移除連續的重複項
我們應該寫一個接受數字/字串文字陣列的函式。該函式應該在不使用額外儲存空間的情況下移除陣列中所有多餘的連續元素。
例如,如果輸入陣列是 -
const arr = [17, 17, 17, 12, 12, 354, 354, 1, 1, 1];
則輸出應該是 -
const output = [17, 12, 354, 1];
因此,讓我們寫出此函式的程式碼 -
示例
程式碼為 -
const arr = [17, 17, 17, 12, 12, 354, 354, 1, 1, 1];
const comp = (arr, len = 0, deletable = false) => {
if(len < arr.length){
if(deletable){
arr.splice(len, 1);
len--;
}
return comp(arr, len+1, arr[len] === arr[len+1])
};
return;
};
comp(arr);
console.log(arr);輸出
控制檯中的輸出是 -
[ 17, 12, 354, 1 ]
廣告
資料結構
計算機網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP