JavaScriptで2つの文字列のgcdを検索する
記数法では、2つの数の最大公約数(GCD)は、両方の数を除算する最大公約数です。同様に、この概念を文字列に適用すると、2つの文字列のgcdは、両方の文字列に存在する最大の部分文字列(長さが最大)になります。
例-
2つの文字列が-
の場合const str1 = 'abcabc'; const str2 = 'abc';
この場合、これらの文字列の公約数は-
になります。const gcd = 'abc';
2つの文字列str1とstr2を受け取り、それらのgcdを計算して返すJavaScript関数を作成する必要があります。
例
このためのコードは-
になりますconst str1 = 'abcabc'; const str2 = 'abc'; const findGCD = (str1 = '', str2 = '') => { if (str1 + str2 !== str2 + str1){ // not possible // no common element return ""; } else if (str1 == str2){ return str1; } else if (str1.length > str2.length){ return findGCD(str1.slice(str2.length), str2); } else { return findGCD(str2.slice(str1.length), str1); } }; console.log(findGCD(str1, str2));
出力
そして、コンソールの出力は-
になりますabc
-
JavaScriptで2つの文字列の間の珍しい文字を見つけて返す
問題 2つの文字列を受け取るJavaScript関数を作成する必要があります。この関数は、両方の文字列に共通ではない新しい文字列を返す必要があります。 例 以下はコードです- const str1 = "xyab"; const str2 = "xzca"; const findUncommon = (str1 = '', str2 = '') => { const res = []; for (let i = 0; i < str1.length; i+
-
C#で一時変数を使用せずに2つの文字列を交換します
一時変数を使用せずに2つの文字列を交換するには、次のコードとロジックを試すことができます。 2番目の文字列を最初の文字列に追加します。 str1 = str1 + str2; str1をstr2に設定します。 str2 = str1.Substring(0, str1.Length - str2.Length); さて、最後のステップはstr1にstr2を設定することです- str1 = str1.Substring(str2.Length); 例 using System; class Demo { public static void Main(Stri