..n n(n +1) / 2 n +1
Algoritmi keskmine ajaline keerukus A(n)= = =
n n 2
võrdlemist.
Algoritmi ajaline keerukus halvimal juhul W(n)=n võrdlemist.
Asümptootiline hinnang f(n)=O(n).
Ülesanne: koostada skeemprogramm ja C++ kood kogu probleemi lahendamiseks.
Esialgu teha kõik töö main funktsioonis (lihtsuse mõttes) hiljem teha alamfunktsioon
otsingu realiseerimiseks. Lähteandmetena kasutada juhuslike arvude massiivi (pikkus
valida niit et aeg ei tuleks null). 2.4 GHZ AMD-l osutus piisavalt suureks juhuslike
arvude massiiv pikkusega 1 miljon elementi.
Programmi tööaja leidmine
Uurime kui kaua kulub aega algoritmi täitmiseks (C++ kood):
#include
● Ta ei kesta päevi, ega hõlma paljusid seansse nagu “hankelepingu läbirääkimised”. Ta on ülesanne, mis täidetakse ühe seansiga ning kestab mõned minutid kuni tund ● Viib süsteemi ja andmed stabiilsesse kooskõlalisse seisundisse, lisades jälgitava või mõõdetava äriväärtuse ● Tavaline viga on paljude use case-ide defineerimine liiga madalal tasemel, nagu EBP üksiks samm, alamfunktsioon, alamülesanne. 8. Alamkasutusjuhud Kuigi rakenduste puhul kasutusjuhud peaks järgima EBPd, siis vahel on ikkagi normaalsem luua eraldi “alam” (haha dom) use case-id, mis esindavad põhilise use case-i alamülesandeid või samme. Näiteks, alamülesannet või laiendust “maksmine krediitkaardiga” võib korrata erinevates põhilistes kasutusjuhtudes. Et ei peaks dubleerima teksti, siis on mõtekam eraldada ta