Discussione:Ricerca dicotomica
Ultimo commento: 10 anni fa, lasciato da LoreDema in merito all'argomento Implementazione ricorsiva in Java
Mi sembra sia sbagliato! Ho provato a compilarlo e dà errore. Non vorrei sbagliarmi, ma eliminerei la variabile s e sostituirei:
if (k < a[q])
s = binarySearch(a, p, q-1, k);
if (k > a[q])
s = binarySearch(a, q+1, r, k);
con:
if (k < a[q])
return binarySearch(a, p, q-1, k);
if (k > a[q])
return binarySearch(a, q+1, r, k);
Sbaglio? LoreDema (msg) 18:35, 29 dic 2013 (CET)
E' davvero bsearch una delle librerie standard del C? A me non risulta, poi potrei anche sbagliarmi :) --87.3.26.81 (msg) 20:33, 11 gen 2010 (CET)Fabio1990
- Nel draft dello standard del C ANSI c'e`. -- IANEZZ (msg) 18:41, 12 gen 2010 (CET)
Test
modificaI listati sorgente proposti, per essere dimostrativi vanno bene, ma per correttezza didattica, manca qualunque controllo sui valori in entrata, ovvero che il limite minore di ricerca sia effettivamente inferiore a quello maggiore (velocizzerebbe l'esecuzione) e soprattutto che siano (interi) positivi (altrimenti si può generare un errore).