Computer >> 컴퓨터 >  >> 프로그래밍 >> PHP

PHP gmp_hamdist() 함수 – 두 GMP 숫자 간 해밍 거리 구하기

개요

gmp_hamdist() 함수는 두 GMP 숫자 사이의 해밍 거리(Hamming Distance)를 계산하는 데 사용됩니다. 해밍 거리란 두 숫자를 이진수로 표현했을 때 서로 다른 비트의 개수를 의미합니다.

문법

gmp_hamdist(n1, n2)

매개변수

  • n1 − 첫 번째 GMP 숫자입니다. PHP 5.6 이상 버전에서는 GMP 객체를 사용할 수 있으며, 숫자 문자열도 지원합니다.

  • n2 − 두 번째 GMP 숫자입니다. PHP 5.6 이상 버전에서는 GMP 객체를 사용할 수 있으며, 숫자 문자열도 지원합니다.

참고: 두 매개변수 모두 음수가 아닌(non-negative) 값이어야 합니다.

반환값

gmp_hamdist() 함수는 두 숫자 간의 해밍 거리를 GMP 숫자 형태로 반환합니다.

예제

다음은 gmp_hamdist() 함수의 기본적인 사용 예제입니다 −

<?php
    $n1 = "5";
    $n2 = "5";
    $dist = gmp_hamdist($n1, $n2);
    echo $dist;
?>

출력

위 코드의 실행 결과는 다음과 같습니다 −

0

두 숫자가 완전히 동일하기 때문에 서로 다른 비트가 없어 해밍 거리는 0이 됩니다.

추가 예제

이번에는 서로 다른 두 숫자를 비교해 보겠습니다 −

<?php
    $n1 = "11"; // 이진수: 1011
    $n2 = "13"; // 이진수: 1101
    echo gmp_hamdist($n1, $n2);
?>

실행 결과 −

2

11(1011)과 13(1101)을 이진수로 비교하면 세 번째와 네 번째 비트가 서로 다르므로 해밍 거리는 2입니다.