Байланыстырылған сұраққа жауапта айтылғандай, алгоритмнің уақыт күрделілігі O(log n) болуының жалпы жолы - бұл алгоритм үшін кіріс өлшемін қайта-қайта қысқарту арқылы жұмыс істеу. әрбір итерациядағы кейбір тұрақты фактор бойынша.
log n нені білдіреді?
O(log N) негізінен уақыт сызықтық артады, ал n экспоненциалды түрде артады. Сонымен, 10 элементті есептеу үшін 1 секунд қажет болса, 100 элементті есептеу үшін 2 секунд, 1000 элементті есептеу үшін 3 секунд және т.б. Алгоритмдердің түрін бөлу және жеңу, мысалы, екілік іздеу кезінде бұл O(log n) болады.
O және log n дегеніміз не?
n өлшемін енгізу үшін O(n) алгоритмі n -ға пропорционал қадамдарды орындайды, ал басқа O(log(n)) алгоритмі қадамдарды орындайды шамамен log(n). Әлбетте, log(n) n-ден кіші, сондықтан күрделілік алгоритмі O(log(n)) жақсырақ.
Сіз n журналын қалай есептейсіз?
Алгоритмді 1-ден 1-ге дейін айналдырудың орнына құрылымды қайта-қайта екіге бөліп, әрбір бөлу үшін тұрақты санды орындасаңыз, алгоритм O(log n) болады деген идея. Жауап кеңістігі бөлінетін іздеу алгоритмдері: O(log n).
Log n Square дегеніміз не?
Журнақ ^2 (
) өлшемі мәселесі үшін журнал журнал пропорционал екенін білдіреді.
. Журнақ(
)^ 2 бұл дегенді білдіреді журнал шаршысына пропорционал.