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

JavaScriptで2つの異なる文字を含む最長の文字列


最初の引数として文字列を取り、2番目の引数として数値(文字列の長さよりも小さい)を受け取るJavaScript関数を作成する必要があります。この関数は、元の文字列から文字を削除し、最大2つの異なる文字を含む最長の文字列になるように新しい文字列を準備する必要があります。

そして最後に、関数はその目的の文字列の長さを返す必要があります。

例:入力文字列が-

の場合
const str = 'kjeljsdl';

その場合、出力は-

になります。
const output = 4;

最大2つの異なる文字を含む最長の部分文字列は「jljl」であるため

このためのコードは-

になります
const str = 'kjeljsdl';
const longestSubstring = (str = '') => {
   const { length } = str;
   if (length <= 1){
      return 0;
   };
   const keys = [...new Set(str)];
   const arr = [];
   let max = 0;
   for (let i = 0; i < keys.length - 1; i++) {
      for (let j = i + 1; j < keys.length; j++) {
         arr.push(keys[i] + keys[j]);
      }
   }
   arr.forEach(item => {
      let sub = '';
      for (let i = 0; i < str.length; i++) {
         if (sub[sub.length - 1] === str[i]) {
            sub = '';
            break;
         }
         if (item.includes(str[i])) {
            sub += str[i];
         }
      }
      if (sub && sub.length > max){
         max = sub.length;
      };
   });
   return max;
}
console.log(longestSubstring(str));

出力

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

になります
4

  1. JavaScriptで文字列の2つの部分を削除するにはどうすればよいですか?

    文字列の2つの部分の間のテキストを削除するには、JavaScript正規表現を使用します。 例 次のコードを実行して、括弧内のテキストを削除する方法を学ぶことができます- <html>    <head>       <script>          var str = "Welcome to Qries (website)";          document.write(str);

  2. Python –K個の異なる文字を含むNサイズのサブストリング

    「N」サイズの部分文字列を「K」個の異なる文字で分割する必要がある場合は、それが繰り返され、「set」メソッドを使用してさまざまな組み合わせが取得されます。 例 以下は同じもののデモンストレーションです my_string = 'Pythonisfun' print("The string is : ") print(my_string) my_substring = 2 my_chars = 2 my_result = [] for idx in range(0, len(my_string) - my_substring + 1): if (