я создал следующую функцию, которая принимает два Integers
в качестве параметров и вычисляет НОД из них:Эффективный способ вычисления наибольшего общего делителя из массива - Swift
func getGCD(_ num1: Int, _ num2: Int) -> Int {
let remainder = num1 % num2
if remainder != 0 {
return gcd(num2, remainder)
} else {
return num2
}
}
ПРИМЕЧАНИЕ: Я хочу использование Recursivity
.
Вопрос 1: Есть ли способ сделать эту функцию более эффективной?
Вопрос 2: Как я могу использовать эту функцию в Array
типа [Int]
?
Это место не предназначено для оказания вам вашей домашней работы – Simon
Это вопрос с алгоритмом. Язык не имеет значения. Хорошее обсуждение здесь: http://stackoverflow.com/questions/16628088/euclidean-algorithm-gcd-with-multiple-numbers – matt
Ваш код не работает, потому что 'getGCD' и' gcd' - это два разных имени. – matt