Computer >> Máy Tính >  >> Lập trình >> Javascript

Tìm số lần xóa tối thiểu trong chuỗi trong JavaScript

Giả sử chúng ta có một chuỗi nhị phân như thế này -

const str = '001001';

Chúng tôi được yêu cầu viết một hàm JavaScript lấy một chuỗi như vậy làm đối số đầu tiên và duy nhất.

Sau đó, hàm sẽ tính toán và trả về số lần xóa tối thiểu cần thiết trong đầu vào để không có hai số liền kề nào giống nhau.

Ví dụ, đối với chuỗi trên, đầu ra phải là -

const output = 2;

bởi vì nếu chúng ta xóa '0' ở chỉ mục 0 và 3, chuỗi mới sẽ là '0101', đây là chuỗi dài nhất mong muốn.

Ví dụ

Mã cho điều này sẽ là -

const str = '001001';
const minimumDeletions = (str = '') => {
   let count = 0;
   const { length } = str;
   for(let i = 0; i < length; i++){
      if (str[i] === str[i + 1]){
         count++;
      };
   }
   return count;
};
console.log(minimumDeletions(str));

Đầu ra

Và đầu ra trong bảng điều khiển sẽ là -

2