Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Consiglio sulla struttura da utilizzare

    Salve a tutti,
    vorrei un semplice consiglio:
    Che tipo di strutture (lista concatenata, albero, tabella hash) mi consigliate per realizzare questo programma:
    https://github.com/myblacksloth/java...ouseManagement

    per i dispositivi mobili
    https://github.com/myblacksloth/java...ment/README.md

    Io utilizzerei una lista concatenata oppure una tabella hash... ma sono più convinto per l'utilizzo di una lista.
    Come dato della lista voi utilizzereste il magazzino o il prodotto?


    Nel senso che:
    MAGAZZINO ==> prodotto 1 -> prodotto 2 -> prodotto 3
    PRODOTTO ==> magazzino 1 -> magazzino 2 -> magazzino 3


    io opterei per prodotto perché così come dato della lista posso usare nome, indirizzo, quantità....


    C'è qualcosa che mi dice di dover utilizzare più liste, una per i prodotti, una per i magazzini, etc.... non lo so....


    Inoltre..... qualcuno saprebbe spiegarmi molto brevemente cosa è un filtro di ricerca? Da quello che ho capito è un metodo che restituisce l'oggetto cercato... ma se ci sono più oggetti che possono corrispondere ad un criterio di ricerca viene restituito un array di oggetti?


    Fin ora per la ricerca ho sempre utilizzato delle stringhe che dovendo essere usate come testo delle JLabel includevano una formattazione HTML che mettesse in ordine i dati da stampare... es.:
    | nome | quantità |
    | tel | 123 |


    un esempio di questo criterio di ricerca è visibile nei programmi che ho fin ora sviluppato (https://github.com/myblacksloth/javaPrograms)


    Spero che qualcuno possa aiutami!
    Cordiali saluti

  2. #2
    Non credo che le liste siano la soluzione migliore poiché dovendo essere iterate per intero per trovare un dato, se un oggetto si trova nell'ultima posizione dell'ultimo magazzino ci vuole un ora per trovarlo... Avrei pensato ad un arrayList o qualcosa di simile ma poi si banalizza estremamente la soluzione del programma (arrayList per poter utilizzare la ricerca binaria)... Non mi vengono in mente nuove idee... qualcuno può proporre qualche soluzione?

  3. #3
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da antomau96 Visualizza il messaggio
    Io utilizzerei una lista concatenata oppure una tabella hash... ma sono più convinto per l'utilizzo di una lista.
    Come dato della lista voi utilizzereste il magazzino o il prodotto?


    Nel senso che:
    MAGAZZINO ==> prodotto 1 -> prodotto 2 -> prodotto 3
    PRODOTTO ==> magazzino 1 -> magazzino 2 -> magazzino 3
    Quindi: un magazzino ha N prodotti (e questo ok, è logico).
    Ma anche: uno stesso prodotto può stare contemporaneamente in più magazzini??


    E comunque la scelta della/e struttura/e dati (anche più di una, eventualmente composte e usate insieme) dipende ANCHE dalle operazioni che ci devi poi fare tipicamente o comunque più frequentemente.
    Esempio: dato un codice magazzino, per dire es. "MAG001", devi poter rintracciare velocemente l'oggetto Magazzino. Cosa ti fa pensare? Ad una lista .... o una "mappa"?
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  4. #4
    Mi è stato consigliato di usare le mappe​ ma il problema è che i libri che utilizzo per studiare presentato le mappe come cose già belle e fatte descrivendo solo quali sono i metodi (ciop l'interfaccia pubblica) per implementarla...
    Esiste qualche libro che descrive come implementare una mappa da 0 o qualcosa di simile?
    Ultima modifica di antomau96; 30-01-2017 a 16:38

  5. #5
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Non serve... sono già di serie nel core di Java:

    HashMap
    Hashtable
    LinkedHashMap
    TreeMap
    ecc.

    Dai un occhio alle classi fornite dal package java.util.

    Ti basta scegliere quella che preferisci / quella che più si adatta alla tua esigenza.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

Tag per questa discussione

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.