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

JavaScriptでの2つの文字列間のハミング距離


ハミング距離

同じ長さの2つの弦の間のハミング距離は、対応する記号が異なる位置の数です。

たとえば、次の文字列について考えてみます-

const str1 = 'delhi';
const str2 = 'delph';

文字列の4番目と5番目の文字が異なるため、これらの文字列のハミング距離は2です。そして明らかに、ハミング距離を計算するには、同じ長さの2つのストリングが必要です。

したがって、2つの文字列、たとえばstr1とstr2を取り込んで、それらのハミング距離を返すJavaScript関数を作成する必要があります。

以下はコードです-

const str1 = 'delhi';
const str2 = 'delph';
const hammingDistance = (str1 = '', str2 = '') => {
   if (str1.length !== str2.length) {
      return 0;
   }
   let dist = 0;
   for (let i = 0; i < str1.length; i += 1) {
      if (str1[i] !== str2[i]) {
         dist += 1;
      };
   };
   return dist;
};
console.log(hammingDistance(str1, str2));

出力

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

2

  1. JavaScriptで2つの文字列の間の珍しい文字を見つけて返す

    問題 2つの文字列を受け取るJavaScript関数を作成する必要があります。この関数は、両方の文字列に共通ではない新しい文字列を返す必要があります。 例 以下はコードです- const str1 = "xyab"; const str2 = "xzca"; const findUncommon = (str1 = '', str2 = '') => {    const res = [];    for (let i = 0; i < str1.length; i+

  2. Pythonで2つの文字列間の編集距離が1つであるかどうかを確認します

    2つの文字列sとtがあるとします。 sとtの間の編集距離が正確に1であるかどうかを確認する必要があります。ここで、2つの文字列間の編集は、これら3つの文字列のいずれかを意味します- 文字を挿入 文字を削除する 文字を置き換える したがって、入力がs =hello t =heilloのような場合、tを取得するにはsに1文字を挿入する必要があるため、出力はTrueになります。 これを解決するには、次の手順に従います- 1、次に falseを返す edit_dist_cnt:=0、i:=0、j:=0 i