View Single Post
Old 02-03-2008, 13:00   #3
gugoXX
Senior Member
 
L'Avatar di gugoXX
 
Iscritto dal: May 2004
Cittā: Londra (Torino)
Messaggi: 3692
La specifica: "In ordine non decrescente" significa che li vuoi in "ordine crescente" oppure in "ordine qualsiasi, purche' soddisfino il filtro"?
Se l'ordine e' qualsiasi, allora dovrebbe essere sufficiente quanto segue, altrimenti occorre cambiarlo un po', ma si dovrebbe poter fare a paritre da questo:

Quote:
Originariamente inviato da Skarafaz Guarda i messaggi
successors(k): restituisce un iteratore delle entry del dizionario con chiave maggiore o uguale a k (in ordine non decrescente)
Cerco in il nodo Nk, con ricerca binaria
Dovrebbe essere sufficiente un iteratore su tutti i nodi che sono figli di destra di Nk

Quote:
predecessors(k): restituisce un iteratore delle entry del dizionario con chiave minore o uguale a k (in ordine non decrescente)
Cerco in il nodo Nk, con ricerca binaria.
Lo cerco con una visita in profondita', prendendo sempre la strada di sinistra.
Restituisco tutti i valori, fino a che non trovo il primo > di k. Termino senza restituirlo.
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto.
E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test.

Ultima modifica di gugoXX : 02-03-2008 alle 13:02.
gugoXX č offline   Rispondi citando il messaggio o parte di esso