Ogni lista collegata ha come componente di un " nodo ", che contiene sia i dati che vengono memorizzati e una variabile che fa riferimento al prossimo elemento della lista . Alcuni elenchi più complessi contengono nodi che fanno riferimento a più altri nodi , ma per la lista di base , il riferimento indica soltanto al nodo successivo nella lista. . I dati memorizzati nella lista possono essere di qualsiasi tipo 
 Linked List Classe 
 
 In Java , una lista collegata conterrà , come minimo , due classi : la principale classe lista , e una classe nodo . L'esempio seguente illustra questa differenza. In questo elenco , la classe nodo risiede come membro privato della classe lista, in modo che solo l'elenco può manipolare nodi . Per consentire a un utente di aggiungere o rimuovere elementi , deve passare attraverso l'interfaccia della classe : class LLIST pubblica { 
 
 privato Node classe statica { int data ; nodo successivo ; } 
 
 } 
 
 inserimento nella lista 
 
 Ogni lista avrà un metodo di inserimento. Questo metodo avrà un valore utente , in questo caso un numero intero , e inserire un nodo contenente tale valore lungo l'elenco . Ciò significa anche che ogni lista conterrà una semplice variabile che rappresenterà un nodo di testa, in modo che la lista sa quando è vuoto o quando l'utente si trova all'inizio della lista : testa nodo = null; 
 
 vuoto insertNode pubblico ( int value ) { 
 
 nodo temp = new Node ( ) ; new.data = value; 
 
 if ( testa == null) { testa = temperatura ; temp.next = null; } 
 
 else { nodo corrente = testa ; 
 
 mentre ( current.next = null ) { corrente == current.next ; } 
 
 current.next = temperatura ; temp.next = null; } 
 di togliere dal listino 
 
 Rimozione dalla lista è un po 'più complicato . In un elenco semplice , l' utente sarà solo aggiungere sull'estremità della lista . Con la rimozione , può rimuovere un nodo da mezzo. In questo caso , il programmatore deve assicurare che l'elenco rimane coerente assicurandosi nodo precedente al nodo rimosso riferisce al nodo dopo nodo rimosso : void removeNode pubblica ( int value) { 
 
 if ( testa! = null ) { nodo corrente = head.next ; sentiero nodo = testa ; 
 
 while ( corrente = null && current.data = value) { percorso = corrente ; ! corrente = current.next ; } 
 
 se ( current.data == valore ) { trail.next = current.next ; corrente = null; return; } else if ( corrente == null) { System.out.println ( " Elemento non nella lista " ) ; return; } } } 
 
              
Programmazione © www.354353.com