Comment calculer la grande-theta
Peut quelqu'un me fournir un temps réel exemple de la façon de calculer les gros thêta.
Est grand thêta quelque chose comme la moyenne des cas, (min-max)/2?
Je veux dire (un minimum de temps - big O)/2
S'il vous plaît corrigez-moi si je me trompe, merci
- Avez-vous lu par exemple en.wikipedia.org/wiki/Big_O_notation, qui a un tableau de comparaison des différentes notations asymptotiques?
- merci pour le lien, oui, j'ai vécu cela avant; le tableau décrit principalement abt big O et je suis difficile à suivre, cependant j'ai besoin de temps réel exemple pour obtenir plus de compréhension
Vous devez vous connecter pour publier un commentaire.
Grand-theta notation représente la règle suivante:
Voici un exemple d'algorithme:
Nous souhaitons évaluer la fonction de coût
c(n)
oùn
est la taille de la liste d'entrée. Cet algorithme va effectuer une comparaison pour chaque élément de la liste, de sortec(n) = n
.c(n)/n = 1
qui reste bornée commen
va à l'infini, doncc(n)
pousse pas plus vite quen
. C'est ce que l'on entend par big-O notationc(n) = O(n)
. À l'inverse,n/C(n) = 1
reste aussi borné, de sortec(n)
pousse pas plus lent quen
. Depuis, il pousse ni lent ni rapide, elle doit croître à la même vitesse. C'est ce que l'on entend par theta notationc(n) = Θ(n)
.Noter que
c(n)/n²
est aussi borné, de sortec(n) = O(n²)
ainsi — big-O notation est simplement la limite supérieure de la complexité, de sorte que touteO(n)
fonction est aussiO(n²)
,O(n³)
...Cependant, depuis
n²/c(n) = n
est pas bornée, alorsc(n) ≠ Θ(n²)
. C'est la propriété intéressante de grand-theta notation: c'est à la fois une limite supérieure et une borne inférieure de la complexité.Grand theta est serré, lié, pour une fonction
T(n)
: si:Omega(f(n))<=T(n)<=O(f(n))
, puis Thêta(f(n)) est la difficulté liée pour T(n).En d'autres termes Thêta(f(n)) "décrit" une fonction T(n), si les deux O [O] et l'Oméga, qui décrit le même T, avec la même f.
par exemple, un quicksort [avec un bon médian des choix], prend toujours au plus O(nlogn), à au moins Omega(nlogn), de sorte que quicksort [avec une bonne médian des choix] est Theta(nlogn)
EDIT:
ajout de l'analyse dans les commentaires:
À la recherche d'un tableau est toujours Theta(n). le Thêta fonction n'indique pas pire/meilleur des cas, mais le comportement du cas. j'.e, recherche pour un tableau T(n)=nombre d'ops pour le pire des cas. ici, évidemment
T(n)<=O(n)
, mais aussiT(n)>=n/2
, parce qu'au pire des cas, vous avez besoin pour effectuer une itération de l'ensemble de la baie, de sorteT(n)>=Omega(n)
et donc Theta(n) est asymptotique lié.T(n)<=O(n)
, mais aussiT(n)>=n/2
, parce qu'au pire des cas, vous avez besoin pour effectuer une itération de l'ensemble de la baie, de sorteT(n)>=Omega(n)
et donc Theta(n) est asymptotique lié.De http://en.wikipedia.org/wiki/Big_O_notation#Related_asymptotic_notations, nous apprenons que "Big O" désigne une limite supérieure, alors que le "Big Thêta" désigne une limite supérieure et de limite inférieure, c'est à dire dans la limite de
n
va à l'infini:De sorte que vous ne peut pas en déduire Grand Thêta de Big O.