gmp_hamdist: ハミング距離 (GMP 関数) - PHPプロ!マニュアル
gmp_hamdist: ハミング距離
gmp_hamdist
(PHP 4 >= 4.0.4, PHP 5)
gmp_hamdist — ハミング距離
説明
a と b の間のハミング距離を返します。オペランドは共に非負とする必要があります。
パラメータ
- a
-
GMP 数リソース、 あるいは数値に変換可能な数値形式の文字列。
正の数である必要があります。
- b
-
GMP 数リソース、 あるいは数値に変換可能な数値形式の文字列。
正の数である必要があります。
返り値
GMP 数リソースを返します。
例
例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() - ビット XOR を計算する




ページのトップへ


kende様のご指摘通り、三項演算子を使用する際には、コードの複雑度などを考慮する必要がありますね。書きやすさと共に可読性も追求したいところですね。