For циклінің үлкен O әрпі қандай?
For циклінің үлкен O әрпі қандай?

Бейне: For циклінің үлкен O әрпі қандай?

Бейне: For циклінің үлкен O әрпі қандай?
Бейне: ТЫ ЗАБУДЕШЬ О ЗАПОРЕ СЛЕДУЯ ЭТИМ РЕКОМЕНДАЦИЯМ. С этим сталкивается большинство людей. 2024, Қараша
Anonim

The үлкен О а цикл итерациялар саны болып табылады цикл ішіндегі мәлімдемелер санына цикл . Енді анықтамаға сәйкес, Үлкен О болу керек О (n*2) бірақ солай О (n).

Сол сияқты, сіз for циклінің күрделілігі қандай?

Біз мәлімдемелерді O(1) деп есептейтіндіктен, for үшін жалпы уақыт цикл N * O(1), ол жалпы O(N) болып табылады. Сыртқы цикл N рет орындайды. Әр жолы сыртқы цикл орындайды, ішкі цикл M рет орындайды. Нәтижесінде, ішкі мәлімдемелер цикл жалпы N * M рет орындаңыз.

Сонымен қатар, мысалмен Big O белгісі дегеніміз не? The Үлкен О белгісі алгоритмнің жоғарғы шегін анықтайды, ол функцияны тек жоғарыдан шектейді. Үшін мысал , Кірістіру сұрыптау жағдайын қарастырыңыз. Бұл ең жақсы жағдайда сызықтық уақытты және ең нашар жағдайда квадрат уақытты алады. Кірістіру сұрыптауының уақыт күрделілігі деп сенімді түрде айта аламыз О (n^2).

Қарапайым, for циклінің уақыт күрделілігін қалай табуға болады?

Мысалы, Таңдау сұрыптауы және Кірістіру сұрыптауында O(n^2) бар уақыт күрделілігі . O(Кіру) Уақыттың күрделілігі а цикл болса, O(Logn) ретінде қарастырылады цикл айнымалылар тұрақты шамаға бөлінеді/көбейтіледі. Мысалы, екілік іздеуде O(Logn) бар уақыт күрделілігі.

Big O қалай есептейсіз?

Кімге Үлкен О есептеңіз , кодтың әрбір жолын аралап, оның бар-жоғын анықтауға болады О (1), О (n) т.б., содан кейін өзіңізді қайтарыңыз есептеу аяқ кезінде. Мысалы, болуы мүмкін О (4 + 5n) мұндағы 4 төрт данасын білдіреді О (1) және 5n бес данасын білдіреді О (n).

Ұсынылған: