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

文字列の最初の繰り返し文字のインデックスを返す-JavaScript


文字列を受け取り、文字列に2回出現する最初の文字のインデックスを返すJavaScript関数を作成する必要があります。

そのような文字がない場合は、-1を返す必要があります。以下は私たちの文字列です-

const str = 'Hello world, how are you';

以下はコードです-

const str = 'Hello world, how are you';
const firstRepeating = str => {
   const map = new Map();
   for(let i = 0; i < str.length; i++){
      if(map.has(str[i])){
         return map.get(str[i]);
      };
      map.set(str[i], i);
   };
   return -1;
};
console.log(firstRepeating(str));

出力

以下はコンソールの出力です-

2

  1. Pythonで指定された文字列の最初の繰り返し文字のインデックスを見つけるプログラム

    文字列sがあるとすると、その中の最初の繰り返し文字のインデックスを見つける必要があります。繰り返し文字が見つからない場合は、-1を返します。 したがって、入力が「abcade」のような場合、「a」はインデックス3に再び存在するため、出力は3になります。 これを解決するには、次の手順に従います- マップ文字を定義する 0からsのサイズの範囲のiについては、 文字でs[i]の場合、 私を返す それ以外の場合、 chars [s [i]]:=chars [s [i]] + 1 戻り値-1 理解を深めるために、次の実装を見てみましょう- 例 from collections

  2. Pythonの文字列の最初の一意の文字

    文字列があり、文字列内の最初の一意の文字を検索する必要があるとします。したがって、文字列が「人」のようなものである場合、出現する最初の文字は「o」です。したがって、インデックスが返されます。ここでは2です。そのような文字がない場合は、-1を返します。 これを解決するには、次の手順に従います- 1つの頻度マップを作成する 文字列内の文字cごとに、を実行します。 cが頻度にない場合は、それを頻度に挿入し、値1を入力します それ以外の場合は、頻度のカウントを増やします 頻度マップをスキャンします。特定のキーの値が1の場合はそのキーを返し、そうでない場合は-1を返します。 例 理解を深め