Visualizzazione dei risultati da 1 a 8 su 8

Discussione: problema su hashmap

  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2007
    Messaggi
    82

    problema su hashmap

    Salve a tutti,
    Ho un insieme di dati che hanno una chiave in comune per cui scelgo gli hashmap per recuperare i valori dati la chiave. Il mio problema è che vorrei fare anche l'opposto cioè dato un valore recuperare le chiavi. Non vorrei iterare tutte le chiavi per controllare perchè impiegherebbe troppo tempo, mi servirebbe un accesso "diretto". E non vorrei neanche creare un secondo hashmap. Esiste una diversa struttura dati o un metodo che mi permette di fare quello che voglio con una buona velocità? Grazie

  2. #2
    Utente di HTML.it
    Registrato dal
    Mar 2005
    Messaggi
    56
    Ciao,

    hmm dovrei indagare un po' magari ci sono strutture già implementate che funzionano perfettamente..

    al caso tuo comunque mi farei una classe ex novo in cui wrapperei 2 hasmap

    una del tipo

    HashMap<Key, Value> classica

    e una di tipo

    HashMap<Value, List<Key>>


    nella tua classe wrapper poi meterei dei metodi del tipo (scrivo pseuso codice ) :

    Value get(Key key) { classicMap.get(key) }

    List<Key> getKeys(Value value ) { return valueMap.get(value); }


    quindi usando il pattern della composizione


    spero di essermi spiegato .. ma prima dai una sgooglata magari trovi una classe ad hoc

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2005
    Messaggi
    56
    ah ovviamente quando fai i put devi mantenere la consistenza nella seconda mappa e anche quando rimuovi oggetti...

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2007
    Messaggi
    82
    Grazie della risposta, ma sto lavorando su bigdata e non mi è concesso istanziare un nuovo oggetto. Il mio scopo è di testare il mio algoritmo con una quantità di dati sempre maggiore per vedere fin dove riesce a spingersi.

  5. #5
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  6. #6
    Utente di HTML.it
    Registrato dal
    Jul 2007
    Messaggi
    82
    mille grazie

  7. #7
    Utente di HTML.it
    Registrato dal
    Jul 2007
    Messaggi
    82
    le bidimap era quello che stavo cercando ma non riesco a farle riconoscere al compilatore. Importo java.util.Map che dovrebbe contenere tutto ma non mi riconosce le bidimap

  8. #8
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Originariamente inviato da GK4
    le bidimap era quello che stavo cercando ma non riesco a farle riconoscere al compilatore. Importo java.util.Map che dovrebbe contenere tutto ma non mi riconosce le bidimap
    No. BidiMap non fa parte della libreria standard di Java ma fa parte di Apache Commons. Devi aggiungere al tuo progetto il jar di queste librerie per usare BidiMap.
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.