gmp_hamdist

ハミング距離

説明

int gmp_hamdist(GMPintstring $num1, GMPintstring $num2)

num1num2 の間のハミング距離を返します。オペランドは共に非負とする必要があります。

パラメータ

num1

GMP オブジェクト、整数、あるいは数値に変換可能な数値形式の文字列。

正の数である必要があります。

num2

GMP オブジェクト、整数、あるいは数値に変換可能な数値形式の文字列。

正の数である必要があります。

戻り値

num1num2 のハミング距離を int として返します。

例1 gmp_hamdist の例

<?php
$ham1 
gmp_init("1001010011"2);
$ham2 gmp_init("1011111100"2);
echo 
gmp_hamdist($ham1$ham2) . "\n";

/* ハミング距離は、以下と等しくなります */
echo gmp_popcount(gmp_xor($ham1$ham2)) . "\n";
?>

上の例の出力は以下となります。

6
6

参考

  • gmp_popcount
  • gmp_xor