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

การนับสตริงย่อยของสตริงที่มีตัวอักษรที่แตกต่างกันเพียงตัวเดียวใน JavaScript


เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่รับสตริงเป็นอาร์กิวเมนต์เดียว หน้าที่ของฟังก์ชันของเราคือนับสตริงย่อยที่ต่อเนื่องกันทั้งหมดในสตริงอินพุตที่มีตัวอักษรต่างกันเพียงตัวเดียว

ฟังก์ชันควรคืนค่าจำนวนสตริงย่อยดังกล่าวทั้งหมด

ตัวอย่างเช่น −

หากสตริงอินพุตเป็น −

const str = 'iiiji';

จากนั้นผลลัพธ์ควรเป็น −

const output = 8;

เพราะสตริงที่ต้องการคือ −

'iii', 'i', 'i', 'i', 'i', 'j', 'ii', 'ii'

ตัวอย่าง

ต่อไปนี้เป็นรหัส -

const str = 'iiiji';
const countSpecialStrings = (str = '') => {
   let { length } = str;
   let res = length;
   if(!length){
      return length;
   };
   for (let j = 0, i = 1; i < length; ++ i) {
      if (str[i] === str[j]) {
         res += i - j;
      } else {
         j = i;
      }
   };
   return res;
}
console.log(countSpecialStrings(str));

ผลลัพธ์

ต่อไปนี้เป็นเอาต์พุตคอนโซล -

8