Sono venuto a sapere che interpolazione Cerca è una modifica del ricerca binaria dove nel binario di ricerca l'ingresso è diviso in due metà uguali in ogni iterazione calcolandoComputing mid in Ricerca interpolation?
mid = (low + high)/2
e interpolazione cercare metà è calcolato come
mid = low + (key - arr[low]) * ((high - low)/(arr[high] - arr[low]))
Ora ho bisogno di capire questa formula di calcolo mid
in cerca di interpolazione.
Rif: https://en.wikipedia.org/wiki/Interpolation_search#Sample_implementation
Assumere 'basso = 10',' alto = 20', 'arr [basso] == 100' e' arr [alto] == 200'. Ora calcola 'mid' per' chiave == 110', 'chiave == 150' e' chiave == 190'. – Henrik
@ Henrik ma come viene derivata questa formula? –