Использует ли встроенный метод __gcd в библиотеке алгоритма stl алгоритм Евклида при его реализации?
Исходный код, кажется,
/**
* This is a helper function for the rotate algorithm specialized on RAIs.
* It returns the greatest common divisor of two integer values.
*/
template<typename _EuclideanRingElement>
_EuclideanRingElement
__gcd(_EuclideanRingElement __m, _EuclideanRingElement __n)
{
while (__n != 0)
{
_EuclideanRingElement __t = __m % __n;
__m = __n;
__n = __t;
}
return __m;
}
Так что да, он использует евклидов алгоритм.
РЕДАКТИРОВАТЬ: Я немного неправильно понял вопрос, это реализация в заголовках для g ++ 4.9.1.