Oggi abbiamo discusso in una lezione un algoritmo molto semplice per trovare un elemento in un array ordinato usando la ricerca binaria . Ci è stato chiesto di determinare la sua complessità asintotica per una serie di elementi.
La mia idea era, che è obvisously , o per essere più precisi, perché è il numero di operazioni nel caso peggiore. Ma posso fare di meglio, ad esempio se colpisco l'elemento cercato per la prima volta, allora il limite inferiore è .
Il docente ha presentato la soluzione come poiché di solito consideriamo solo gli input peggiori per gli algoritmi.
Ma considerando solo i casi peggiori, qual è il punto di avere la notazione e quando tutti i casi peggiori di un dato problema hanno la stessa complessità ( sarebbe tutto ciò di cui abbiamo bisogno, giusto?).
Cosa mi sto perdendo qui?