Hjem Utvikling Hva er tidskompleksitet? - definisjon fra techopedia

Hva er tidskompleksitet? - definisjon fra techopedia

Innholdsfortegnelse:

Anonim

Definisjon - Hva betyr tidskompleksitet?

Tidskompleksitet er et begrep innen informatikk som tar for seg kvantifiseringen av tiden det tar av et sett med kode eller algoritme å behandle eller kjøre som en funksjon av mengden input.

Med andre ord, tidskompleksitet er i hovedsak effektivitet, eller hvor lang tid en programfunksjon tar å behandle en gitt inngang.

Techopedia forklarer Time Complexity

Tidskompleksitet er ganske enkelt et mål på tiden det tar for en funksjon eller uttrykk å fullføre oppgaven, samt navnet på prosessen for å måle den tiden. Den kan brukes på nesten hvilken som helst algoritme eller funksjon, men er mer nyttig for rekursive funksjoner. Det er lite poeng i å måle tidskompleksiteten for applikasjoner som å hente brukernavn og passord fra en database for sammenligning eller bare lagre data enten det er 20 ms eller 5 ms; det vil være mer i linjen for tilgangstid. Det har ingenting å gjøre med å bry seg om utførelsestiden, men heller at forskjellen er ubetydelig. Imidlertid, hvis det er en rekursiv funksjon som kan kalles flere ganger, kan det å bestemme og forstå kilden til dens tidskompleksitet bidra til å forkorte den totale behandlingstiden fra, for eksempel, 600 ms til 100 ms.

Tidskompleksitet kommer ofte til uttrykk i den "store O-notasjonen", men det er andre notasjoner. Dette er en matematisk fremstilling av den øvre grensen for skaleringsfaktoren for en algoritme og er skrevet som O (Nn), med "N" som antall innganger og "n" er antall looping-uttrykk. For eksempel har vi algoritmen:

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; } }

Det er fem innganger i matchen "tall", og "foreach" -sløyfen gjentas to ganger. Derfor oppstår eksponentiell vekst i behandlingstiden etter hvert som antall innganger og antall løkker vokser.

Hva er tidskompleksitet? - definisjon fra techopedia