Sobes.tech
Junior — Middle

Ներկայացրեք ժամանակային բարդության O(n) հասկացությունը և որ իրավիճակներում է այն կիրառվում։

sobes.tech AI

Պատասխան AI-ից

Ժամանակային բարդությունը O(n) նշանակում է, որ ալգորիթմի կատարման ժամանակը գծայինորեն աճում է մուտքային տվյալների չափի n հետ:

Սա նշանակում է, որ եթե տվյալների հավաքածուի տարրերի քանակը կրկնապատկվի, ապա ժամանակը նույնպես մոտավորապես կրկնապատկվում է:

O(n) իրավիճակի օրինակ՝

  • Անկարգ զանգվածում տարր որոնելը բոլոր տարրերը ստուգելով:

  • Բոլոր թվերի գումարը հաշվելը ցանկում:

Swift-ում օրինակ՝

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

Այստեղ ֆունկցիան անցնում է բոլոր տարրերով մեկ անգամ, հետևաբար նրա ժամանակային բարդությունը՝ O(n):