Sobes.tech
Junior — Middle

Milyen adatokkal vagy szerkezetekkel működik a legnagyobb közös osztó (GCD) kereső algoritmus?

sobes.tech MI

Válasz az MI-től

A legnagyobb közös osztó (LKÖ, GCD) algoritmus egész számokkal működik. A fő adatok két egész szám, amelyekhez meg kell találni a legnagyobb osztót, ami mindkettőt osztja maradék nélkül.

Leggyakrabban az Euklidesz algoritmust használják, amely egymás után cseréli le a számokat (b, a % b), amíg a maradék nem lesz nulla. Végül a legutolsó nem nulla osztó marad meg — ez a LKÖ.

Swift példával:

func gcd(_ a: Int, _ b: Int) -> Int {
    var a = a
    var b = b
    while b != 0 {
        let temp = b
        b = a % b
        a = temp
    }
    return a
}

let result = gcd(48, 18) // az eredmény 6 lesz