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

    creare una lista con riferimento ad un'altra lista

    Salve a tutti ragazzi, avrei un problema con il seguente esercizio:

    "Creare una lista concatenata di voli dove ogni nodo contiene un riferimento ad una lista concatenata di passeggeri".

    mi viene difficile pensare, immaginare come potrei implementare una cosa del genere, ho capito che creata una lista, ogni nodo di questa lista ha un riferimento ad una lista passeggeri. Non voglio la soluzione del problema, vorrei avere se è possibile dei chiarimenti al riguardo, magari con un esempio. Grazie a tutti per la pazienza

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: creare una lista con riferimento ad un'altra lista

    Originariamente inviato da giupardeb
    "Creare una lista concatenata di voli dove ogni nodo contiene un riferimento ad una lista concatenata di passeggeri".

    mi viene difficile pensare, immaginare come potrei implementare una cosa del genere, ho capito che creata una lista, ogni nodo di questa lista ha un riferimento ad una lista passeggeri.
    Nelle liste linkate (immagino solo in un senso, non hai parlato di "doppiamente" linkata) ogni nodo ha 2 cose: a) la/le informazione/i che descrivono la entità trattata e b) un riferimento al nodo "next", il successivo.
    A te basta che tra quelle informazioni ci sia il riferimento ad una "lista" di passeggeri.

    Poi dal punto di vista implementativo devi valutare tu in base anche a cosa ti è stato proposto o imposto. Ci sono svariate possibilità a livello di quante/quali classi definire.

    Mi spiego meglio: puoi decidere di avere solo classi che rappresentano dei "nodi", oppure anche le classi che descrivono una "lista" (che conterrà il nodo "testa" e magari anche il "fondo" per facilitare l'aggiunta con dei metodi appositi). Puoi decidere se tenere classi distinte per voli e passeggeri oppure se fare (con l'aiuto dei generics) una classe ListaLinkata<E> e/o NodoLista<E> (in tal caso devi anche avere le classi che modellano esclusivamente voli e passeggeri, avrai poi es. un NodoLista<Volo> ).
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    ok.. ma un'altra cosa.. un nodo della lista può avere più di un campo di informazione? cioè potrei creare una lista di voli, dove ogni nodo di suddetta lista contiene il numero del volo, il riferimento alla lista passeggeri, e il riferimento al nodo successivo, è possibile?

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

  5. #5
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da giupardeb
    un nodo della lista può avere più di un campo di informazione? cioè potrei creare una lista di voli, dove ogni nodo di suddetta lista contiene il numero del volo, il riferimento alla lista passeggeri, e il riferimento al nodo successivo, è possibile?
    Certo.
    codice:
    public class NodoVolo {
        private String numeroVolo;
        private NodoPasseggero testaListaPasseggeri;
        private NodoVolo successivo;
    
        ......
    }
    Io ho messo solo una testaListaPasseggeri, dovresti scorrere la lista per appendere al fondo. Oppure puoi aggiungere anche il nodo di fondo ma devi gestirlo appropriatamente in modo consistente con la testa. Ecco perché a volte è utile incapsulare questo in una classe es. ListaPasseggeri che nasconde quello che serve per gestire più facilmente i nodi.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

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.