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

เขียนอัลกอริทึมที่ใช้อาร์เรย์และย้ายศูนย์ทั้งหมดไปที่จุดสิ้นสุด JavaScript


เราต้องเขียนฟังก์ชันที่ใช้อาร์เรย์และย้ายศูนย์ทั้งหมดที่มีอยู่ในอาร์เรย์นั้นไปยังส่วนท้ายของอาร์เรย์โดยไม่ต้องใช้พื้นที่เพิ่มเติม เราจะใช้เมธอด Array.prototype.forEach() ที่นี่ร่วมกับ Array.prototype.splice() และ Array.prototype.push()

รหัสสำหรับฟังก์ชันจะเป็น −

ตัวอย่าง

const arr = [34, 6, 76, 0, 0, 343, 90, 0, 32, 0, 34, 21, 54];
const moveZero = (arr) => {
   for(ind = 0; ind < arr.length; ind++){
      const el = arr[ind];
      if(el === 0){
         arr.push(arr.splice(ind, 1)[0]);
         ind--;
      };
   }
};
moveZero(arr);
console.log(arr);

ผลลัพธ์

ผลลัพธ์ในคอนโซลจะเป็น -

[34, 6, 76, 343, 90, 32, 34, 21, 54, 0, 0, 0, 0]