Qual è il modo più semplice per eseguire una ricerca binaria su un (già) ordinato NSArray
?Come eseguire la ricerca binaria su NSArray?
Alcuni potenziali modi che hai trovato finora includono:
- L'uso di
CFArrayBSearchValues
(menzionato here) - sarebbe questo lavoro su unNSArray
? Il metodo
indexOfObject:inSortedRange:options:usingComparator:
diNSArray
presuppone che l'array sia ordinato e prende un parametroopts
di tipoNSBinarySearchingOptions
- significa che esegue una ricerca binaria? Il docs solo dire:restituisce l'indice, in un intervallo specificato, di un oggetto rispetto elementi dell'array utilizzando un determinato blocco NSComparator.
Scrivere il mio metodo di ricerca binario (qualcosa sulla falsariga di this).
Vorrei aggiungere che io sono di programmazione per iOS 4.3 e versioni successive
Grazie in anticipo.
Perché non utilizzare invece NSDictionary? objectForKey: cercherà te. – progrmr
Un paio di domande su questo - qual è il vantaggio di un dizionario su un array per una ricerca di oggetti? Inoltre, per usare il metodo che hai suggerito non avrei bisogno di conoscere la chiave dell'oggetto? La ragione per cui sto cercando l'array per l'oggetto in primo luogo è che non conosco il suo indice - se ho cambiato l'implementazione di un dizionario, questo significa che non conoscerei la chiave. – Barjavel