Supponiamo che io abbia questo albero: 1 2 3 4 5 Quindi l’immagine speculare sarà: 1 3 2 5 4 Supponiamo che i nodes siano di questa struttura: struct node{ node left; node right; int value; } Qualcuno può suggerire un algoritmo per questo?
Conoscete una libreria popolare (Apache, Google, ecc.) Che ha un’implementazione Java affidabile per un heap min-max, ovvero un heap che consente di sbirciare il suo valore minimo e massimo in O(1) e di rimuovere un elemento in O(log n) ?
A volte durante i contest di programmazione, ecc., Abbiamo bisogno di una semplice implementazione funzionante della coda di priorità minima con il tasto di riduzione per implementare l’algoritmo di Dijkstra ecc. Io uso spesso il set <pair > e un array (ID di mapping -> valore_chiave ) insieme per raggiungere questo objective. L’aggiunta di un […]
Qualcuno conosce una buona implementazione di interval tree in C ++? Ovviamente, qualcosa ispirato ai template, migliore in stile boost . E un’altra domanda: se qualcuno ha provato, un’implementazione base dell’albero std::vector basata su intervalli con l’ordinamento può battere l’albero ad albero generico (con operazioni O (lg) in pratica?
Una citazione dal libro che sto leggendo Head First Java : Il punto è che gli hashcode possono essere gli stessi senza necessariamente garantire che gli oggetti siano uguali, perché potrebbe accadere che l’algoritmo di hashing utilizzato nel metodo hashCode() restituisca lo stesso valore per più oggetti. Perché il metodo hashCode() restituire lo stesso valore […]
Molte strutture dati memorizzano alberi multi-way come alberi binari usando una rappresentazione chiamata rappresentazione “left-child, right-sibling” . Cosa significa questo? Perché dovresti usarlo?
Ho bisogno di un albero di statistica degli ordini per i contenitori di mappe standard di GCC STL. Ho controllato e c’è qualcosa di conosciuto come PBDS. Strutture dati basate su criteri. Anche questo uso non mi è chiaro. Chiunque può dirmi come utilizzare i contenitori di mappe STL per l’albero delle statistiche degli ordini? […]
Sono sicuro che c’è una buona ragione, ma qualcuno potrebbe spiegare perché manca l’interfaccia java.util.Set get(int Index) o un metodo get() simile? Sembra che gli insiemi siano ottimi per inserire le cose, ma non riesco a trovare un modo elegante per recuperare un singolo elemento da esso. Se so che voglio il primo elemento, posso […]
Ho questa funzione API: public ResultEnum DoSomeAction(string a, string b, DateTime c, OtherEnum d, string e, string f, out Guid code) Non mi piace. Perché l’ordine dei parametri diventa inutilmente significativo. Diventa più difficile aggiungere nuovi campi. È più difficile vedere cosa viene passato in giro. È più difficile il refactoring del metodo in parti […]
In C #, un tipo anonimo può essere il seguente: method doStuff(){ var myVar = new { a = false, b = true } if (myVar.a) { // Do stuff } } Tuttavia, quanto segue non verrà compilato: method doStuff(){ var myVar = new { a = false, b = true } if (myVar.a) { […]