Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

Java Concepts : Linked Zoznam Lab

linajkové listy sú základné dátové štruktúry v programovaní . Takmer každý programovací jazyk má nejaký spájať zoznam implementovaný ako knižnica , rovnako ako mnoho spôsobov , ako budovať prepojené zoznamy . Java nie je výnimkou . A zatiaľ čo Java možno realizovať prepojený zoznam , pomáha programátorom vedia , ako spojové zoznamy pracovať , a to , čo robia . Tak , programátori môžu pochopiť , ako je vyladiť pre určité situácie a optimalizovať je pre určité systémy . Uzly

Každý spájať zoznam je ako jeho súčasť " uzol " , ktorý obsahuje ako dáta sú uložené a premennú , ktorá odkazuje na ďalšiu položku v zozname . Niektoré zložitejšie zoznamy obsahujú uzly , ktoré odkazujú na niekoľko ďalších uzlov , ale pre základný zoznam , odkaz poukazuje iba na ďalšie uzol v zozname . . Údaje uložené v zozname môžu byť akéhokoľvek druhu
Súvisí Výpis Trieda

V Jave , bude spájať zoznam obsahovať minimálne , dve triedy : hlavné zoznam trieda a trieda uzol . Nasledujúci príklad ilustruje tento rozdiel . V tomto zozname , trieda uzol je umiestnený ako súkromný člen triedy zoznamu , takže je len zoznam môže manipulovať uzly . K tomu , aby používateľ pridať alebo odstrániť prvky , musí sa ísť cez rozhranie triedy : public class LLIST {

private static class Node { int údaje , Node ďalšie ; }

}

Vloženie do zoznamu

Každý zoznam bude mať metódu vloženie . Táto metóda bude mať hodnotu užívateľov , v tomto prípade celé číslo , a vložiť uzol obsahujúce túto hodnotu pozdĺž zoznamu . To tiež znamená , že každý list obsahuje jednoduchú premennú , ktorá bude predstavovať uzla , tak , aby sa list vie , keď je prázdna , alebo keď užívateľ je na začiatku zoznamu : Node head = null ; celým

public void insertNode ( int hodnota ) {

Node temp = new Node ( ) ; new.data = hodnota ;

if ( hlava == null ) { head = temp ; temp.next = null ; }

else { Node prúd = hlava ;

while ( current.next = null ! ) { prúd == current.next ; }

current.next = temp ; temp.next = null ; }
Odstránenie zo zoznamu

Odstránenie zo zoznamu je trochu zložitejšia . V jednoduchom zozname, bude užívateľ iba pridať na koniec zoznamu . S odstránením , môže sa odstrániť uzol z polovice . V tomto prípade musí programátor zabezpečiť , aby zoznam zostane koherentné tým , že uzol skôr odstránené uzol odkazuje na uzol po odstráneného uzla : public void RemoveNode ( int hodnota ) {

if ( hlava! = null ) { Node prúd = head.next ; Node stopa = hlava ;

while ( prúd = null && current.data = hodnota ) { stopa = prúd ; ! prúd = current.next ; }

if ( current.data == hodnota ) { trail.next = current.next ; prúd = null ; return ; } else if ( aktuálne == null ) { System.out.println ( " Prvok nie je uvedený na zozname " ) , návrat ; } } }

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené