Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

ใช้การเรียกซ้ำเพื่อลบรายการที่ซ้ำกันต่อเนื่องออกจากอาร์เรย์ใน 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 ]