Aikavaatimus

Tähän artikkeliin tai osioon ei ole merkitty lähteitä, joten tiedot kannattaa tarkistaa muista tietolähteistä.
Voit auttaa Wikipediaa lisäämällä artikkeliin tarkistettavissa olevia lähteitä ja merkitsemällä ne ohjeen mukaan.

Tietojenkäsittelytieteessä aikavaatimuksella tarkoitetaan aikaa, jossa ohjelmiston tai tietojärjestelmän osan tulee tehtävästä suoriutua. Aikavaatimus voi olla luonteeltaan joko absoluuttinen tai suhteellinen.

Absoluuttinen aikavaatimus

Absoluuttinen aikavaatimus tarkoittaa sitä, että ohjelman tulee suoriutua esimerkiksi korttipakan järjestämisestä vähintään 20 millisekunnissa.

Suhteellinen aikavaatimus

Suhteellinen aikavaatimus puolestaan suhteutetaan käsiteltävän tietomäärän, esimerkiksi korttien lukumäärän mukaan. Teoreettisessa tietojenkäsittelyssä aikavaatimuksella tarkoitetaan yleensä juuri suhteellista aikavaatimusta. Suhteellisen aikavaatimuksen merkinnässä käytetään suoritusajalle asymptoottista merkintää, missä muuttujalla "n" merkitään tietojoukon kokoa.

Algoritmien valinta

Erilaiset algoritmit tarjoavat erilaisia suoritustehoja suhteessa niiden käsittelemään tietomäärään. Mitä paremmin algoritmien teoreettinen suoritusaika tunnetaan, sitä paremmin pystytään tehtävään valitsemaan suorituskyvyltään riittävä algoritmi. Esimerkiksi lajittelualgoritmien aikavaatimuksia on tutkittu verrattain paljon niiden suuren merkityksen takia.

Esimerkiksi jos korttipakan lajittelualgoritmin aikavaatimus oli Θ(n log(n)), voimme valita lajittelumenetelmäksi lomituslajittelun.

Muuta

Aikavaatimus voi olla myös käänteinen, eli järjestelmän tietyn toiminnon tulee kestää vähintään tietyn aikaa. Tämänkaltainen vaatimus on harvinaisempi, mutta näitä vaatimuksia esiintyy mm. tietoliikenneprotokollissa, joissa voidaan vaatia että virhetilanteen jälkeen seuraava lähetys saa tapahtua aikaisintaan N aikayksikön kuluttua.

Muita algoritmien vaatimuksia ovat mm. muistivaatimus ja stabiilisuusvaatimus.

Tämä tietotekniikkaan liittyvä artikkeli on tynkä. Voit auttaa Wikipediaa laajentamalla artikkelia.