Javascript
 Computer >> コンピューター >  >> プログラミング >> Javascript

JavaScriptで文字列から隣接する重複を削除する


問題

最初で唯一の引数として文字列strを受け取るJavaScript関数。

重複削除は、2つの隣接する等しい文字を選択し、それらを削除することで構成されます。

できなくなるまで、文字列strで重複した削除を繰り返し行います。

そして、このような重複した削除がすべて行われた後、関数は最終的に最終的な文字列を返す必要があります。

たとえば、関数への入力が-

の場合
const str = 'kllkmk';

その場合、出力は-

になります。
const output = 'mk';

出力の説明:

まず、文字列から「ll」を削除して「kkmk」に減らし、「kk」を削除した後、新しい文字列を返します。

このためのコードは-

になります
const str = 'kllkmk';
const removeDuplicates = (str = '') => {
   const arr = [];
   for(const char of str){
      if(char === arr[arr.length - 1]){
         while(arr[arr.length - 1] === char){
            arr.pop();
         };
      } else {
         arr.push(char);
      };
   };
   return arr.join('');  
};
console.log(removeDuplicates(str));

出力

そして、コンソールの出力は-

になります
mk

  1. JavaScriptで文字列の配列からコメントを削除する

    問題 最初の引数として文字列の配列arrを取り、2番目の引数として特殊文字の配列startersを受け取るJavaScript関数を作成する必要があります。 スターター配列には、コメントを開始できる文字が含まれています。関数は配列arrを繰り返し処理し、文字列に含まれるすべてのコメントを削除する必要があります。 たとえば、関数への入力が次の場合: const arr = [    'red, green !blue',    'jasmine, #pink, cyan' ]; const starters = [&#

  2. C#の特定の文字列からすべての重複を削除します

    これが文字列です。 string str = "ppqqrr"; 次に、Hashsetを使用して文字列をcharにマップします。これにより、文字列から重複する文字が削除されます。 var res = new HashSet<char>(str); 完全な例を見てみましょう- 例 using System; using System.Linq; using System.Collections.Generic; namespace Demo {    class Program {       static v