Sobes.tech
Junior — Middle

Vysvětlete koncept časové složitosti O(n) a v jakých situacích se používá.

sobes.tech AI

Odpověď od AI

Časová složitost O(n) znamená, že doba běhu algoritmu roste lineárně s velikostí vstupních dat n.

To znamená, že pokud se počet prvků v datové sadě zdvojnásobí, doba běhu se přibližně zdvojnásobí.

Příklad situace s O(n):

  • Vyhledávání prvku v neuspořádaném poli pomocí prohledávání všech prvků.

  • Výpočet součtu všech čísel v seznamu.

Příklad v Swift:

func sumArray(_ array: [Int]) -> Int {
    var sum = 0
    for num in array {
        sum += num
    }
    return sum
}

Zde funkce projde všechny prvky pole jednou, takže její časová složitost je O(n).