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 aikavaatimusMuokkaa
Absoluuttinen aikavaatimus tarkoittaa sitä, että ohjelman tulee suoriutua esimerkiksi korttipakan järjestämisestä vähintään 20 millisekunnissa.
Suhteellinen aikavaatimusMuokkaa
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 valintaMuokkaa
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.
MuutaMuokkaa
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.