Кућа Развој Шта је временска сложеност? - дефиниција из техопедије

Шта је временска сложеност? - дефиниција из техопедије

Преглед садржаја:

Anonim

Дефиниција - Шта значи сложеност времена?

Временска сложеност је концепт у рачунарској науци који се бави квантификацијом количине времена потребног за сет кода или алгоритма за обраду или покретање као функцију количине уноса.

Другим речима, временска сложеност је у суштини ефикасност, односно колико времена програмској функцији треба да обради дани унос.

Техопедија објашњава временску сложеност

Временска сложеност је једноставно мерило времена које је потребно да функција или израз изврши свој задатак, као и назив поступка за мерење тог времена. Може се применити на готово сваки алгоритам или функцију, али је кориснији за рекурзивне функције. Мало је смисла у мерењу временске сложености апликација, попут преузимања корисничког имена и лозинке из базе података ради поређења или једноставно спремања података било да је 20 мс или 5 мс; то би било више у линији времена приступа. То нема никакве везе са бригом о времену извршења, већ је та разлика занемарљива. Међутим, ако постоји рекурзивна функција која се може назвати више пута, одређивање и разумевање извора њене временске сложености може помоћи у скраћењу укупног времена обраде са, рецимо, 600 мс на 100 мс.

Временска сложеност обично се изражава у "великој О нотацији", али постоје и друге ознаке. Ово је математички приказ горње границе фактора скалирања за алгоритам и пише се као О (Нн), при чему је "Н" број улаза, а "н" број израза који се петљају. На пример, имамо алгоритам:

numbers = {5, 6, 10, 11, 2}; foreach (number as number1)



{


foreach(number as number2) {

statements; } } numbers = {5, 6, 10, 11, 2}; foreach (number as number1)



{


foreach(number as number2) {

statements; } }

numbers = {5, 6, 10, 11, 2}; foreach (number as number1)



{



foreach(number as number2) {

statements; } } numbers = {5, 6, 10, 11, 2}; foreach (number as number1)



{


foreach(number as number2) {

statements; } }

numbers = {5, 6, 10, 11, 2}; foreach (number as number1)



{


foreach(number as number2) {


statements; } }

Постоји пет улаза у низу "бројева", а петља "фореацх" се понавља два пута. Због тога, експоненцијални раст времена обраде настаје како број улаза и број петљи расту.

Шта је временска сложеност? - дефиниција из техопедије