O notacija

Iz testwiki
Pojdi na navigacijo Pojdi na iskanje
Primer notacije O: f(x) ∈ O(g(x)) za c > 0 (e.g. c = 1) in x0 (e.g. x0 = 5) tako, da je f(x) < cg(x) kadar je x > x0.

O notacija (tudi notacija veliki O) se v matematiki uporablja za opisovanje limitnega obnašanja funkcije, ko argument gre proti določeni vrednosti ali neskončnosti. Ta notacija pripada večji družini notacij, ki jih imenujemo Landauova notacija, Bachmann-Landauova notacija (imenovana po Edmundu Landau (1877 – 1938) in Paulu Bachmannu (1837 - 1920)) ali asimptotska notacija.

V računalništvu se notacija O uporablja za razvrščanje algoritmov po tem kako se odzivajo na spremembe v velikosti vhoda.

Definicija

Naj bosta f(x) in g(x) dve funkciji, ki sta definirani nad neko podmnožico realnih števil. Lahko zapišemo :

f(x)=O(g(x)) ko gre x

Če in samo, če obstoja pozitivna konstanta M tako, da je za vse dovolj velike vrednosti x , je f(x) kvečjemu z M pomnožen z g(x) v absolutno vrednost. To je f(x) = O(g(x)) samo, če in samo če obstoja pozitivno realno število M in realno število x0, da velja

|f(x)|M|g(x)| za vse x>x0.

V mnogih primerih je predpostavka, da nas zanima samo stopnja rasti ko gre x proti neskončnosti, neveljavna. Običajno zapišemo f(x) = O(g(x)). Označevanje se lahko uporabi za prikaz obnašanja funkcije f blizu nekega realnega števila (pogosto okoli a=0). Lahko zapišemo, da je

f(x)=O(g(x)) kadar gre xa

če in samo, če obstoja takšni pozitivni števili δ in M, da velja

|f(x)|M|g(x)| za |xa|<δ.

Če je g(x) neničelen za vrednosti dovolj blizu vrednosti a se lahko obe od teh definicij združita z uporabo zgornje in spodnje limite

f(x)=O(g(x)) kadar gre xa

če in samo, če je

lim supxa|f(x)g(x)|<.

Skupina Bachmann-Landauovih notacij

notacija ime opis definicija: za dovolj velike n... definicija opombe
f(n)O(g(n)) veliki omikron; veliki O; veliki Oh f je omejena zgoraj z g (do konstantnega faktorja) asimptotično |f(n)|g(n)k za neki k k>0n0n>n0|f(n)||g(n)k|
ali
k>0n0n>n0f(n)g(n)k
f(n)ω(g(n)) veliki omega f je omejen spodaj z g (do konstatnega faktorja) asimptotično f(n)g(n)k za pozitivni k k>0n0n>n0g(n)kf(n) od začetka 20. stoletja so dokumenti o teoriji števil so stalno bolj uporabljali to notacijo, vendar z občutkom, da je f = o(g) napačno.
f(n)θ(g(n)) veliki theta f je omejen zgoraj in spodaj z g asimptotično g(n)k1f(n)g(n)k2 za neki pozitivni k1, k2 k1>0k2>0n0n>n0

g(n)k1f(n)g(n)k2

f(n)o(g(n)) mali omikron; mali O; mali Oh f prevladuje g asimptotično |f(n)||g(n)|ε za vsak ε ε>0n0n>n0|f(n)||g(n)ε|
f(n)ω(g(n)) mali omega f prevladuje g asimptotsko f(n)g(n)k za vsak k k>0n0n>n0g(n)k<f(n)
f(n)g(n) On the order of f je enak g asimptotsko f(n)/g(n)1 ε>0n0n>n0|f(n)g(n)1|<ε

Bachmann–Landauova notacija uporablja nekaj mnemotehnik. Tako lahko preberemo "omikron" kot "o-mikron" in "omega" lahko preberemo kot "o-mega".

  • mnemotehnika za o-micron: Čitanje o-mikron f(n)O(g(n)) in f(n)o(g(n)) si lahko mislimo kot "O-manjši kot" in "o-manjši kot". Ta mnemotehnika micro/manjši se nanaša na dovolj velik vhodni parameter ali parametre, f raste po stopnji, ki je manjša kot cg glede na gO(f) or go(f).
  • mnemotehnika za o-mega : Čitanje o-mega f(n)Ω(g(n)) in f(n)ω(g(n)) si lahko mislimo kot "O-večji kot". Ta mnemotehnika mega/večji: se nanaša na dovolj velik vhodni parameter ali parametre, f raste po stopnji, ki je večja kot cg glede na gΩ(f) ali gω(f).
  • mnemotehnika za zgornji znak: Ta mnemotehnika nas spominja na to, kdaj uporabimo zgornje grške črke v f(n)O(g(n)) in f(n)Ω(g(n)): za dovolj velik vhodni parameter ali parametre, f raste po stopnji, ki bi lahko bila enaka z cg glede na gO(f).
  • mnemotehnika za spodnji znak: Ta mnemotehnika nas spominja na to, kdaj moramo uporabiti male grške črke v f(n)o(g(n)) in f(n)ω(g(n)): za dovolj velik vhodni parameter ali parametre, f raste po stopnji, ki je neenaka z cg glede na gO(f).

Razen notacije O se v računalništvu uporablja še notacija z velikim teta (Θ) in velikim omega (Ω) . V računalništvu pa se zelo redko uporablja notacija z uporabo malega omega (ω).

Zunanje povezave