Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

การลบตัวอักษรเพื่อให้คู่ติดกันต่างกันใน JavaScript


ปัญหา

เราต้องเขียนฟังก์ชัน JavaScript ที่รับสตริงที่มีเฉพาะ 'A', 'B', 'C' ฟังก์ชันควรหาจำนวนตัวอักษรน้อยที่สุดที่ต้องลบออก เพื่อให้ตัวอักษรในแต่ละคู่ที่ติดกันต่างกันหมด

ตัวอย่าง

โค้ดตัวอย่างดังนี้:

const str = "ABBABCCABAA";
const removeLetters = (str = '') => {
  const arr = str.split('')
  let count = 0
  for (let i = 0; i < arr.length; i++) {
    if (arr[i] === arr[i + 1]) {
      count += 1
      arr.splice(i, 1)
      i -= 1
    }
  }
  return count
}
console.log(removeLetters(str));

ผลลัพธ์

3