Implementazioni di algoritmi/Ricerca dicotomica: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica
Nessun oggetto della modifica
Riga 78:
}
</source>
 
===Implementazione in [[Java]] versione non ricorsiva===
<source lang=java>
/*
* @param lista l'array ordinato su cui effettuare la ricerca
* @param key il valore da cercare
* @return la posizione del valore trovato, -1 se non l'ha trovato
*/
public int ricercaBinariaNonRicorsiva(int lista[], int key)
{
int low = 0;
int high = lista.length-1;
while (low<=high) {
int mid = (low+high)/2;
if(lista[mid]==key)) {
return mid; //valore trovato nella posizione mid
}
else if (lista[mid]<key) {
low = mid + 1;
}
else {
high = mid - 1;
}
}
return -1; //non l'ha trovato
}
</source>
 
[[Categoria:Implementazioni di algoritmi|Ricerca dicotomica]]