유클리드 호제법/유클리드 알고리즘(Euclidean Algorithm) 2개의 자연수의 최대공약수(GCD, Greatest Common Divisor)를 구하는 알고리즘 2개의 자연수 a, b에 대해서 a를 b로 나눈 나머지를 r이라 하면(단, a>b), a와 b의 최대공약수는 b와 r의 최대공약수와 같음 이 성질에 따라, b를 r로 나눈 나머지 r'를 구하고, 다시 r을 r'로 나눈 나머지를 구하는 과정을 반복하여 나머지가 0이 되었을 때 나누는 수가 a와 b의 최대공약수 시간복잡도 O(logN) 기존의 하나씩 나누어서 구하는 방식으로 최대공약수를 구하게 될 경우 시간복잡도 O(N) 예시) 78696과 19332의 최대공약수 78696 = 19332×4 + 1368 19332 = 1368×14 + 18..