Det drejer sig om fire forskellige typer af \'containere\' eller \'collections\'. Fælles for disse er, at de er dynamiske i størrelse, i modsætning til et array, som i Java er af statisk størrelse.
En liste (list, singly linked list) bruges, når du har brug for hurtigt at kunne komme fra et element i din sekvens til det næste, og har brug for hurtigt at kunne indsætte nye elementer midt i listen.
Hvis du også har brug for at komme tilbage til det foregående element, så bruger du en dobbeltkædet liste (doubly linked list). Da en dobbeltkædet liste kan bruges til alt, en enkeltkædet liste også kan bruges til, er det meget almindeligt, kun at have dobbeltkædede lister. Java\' Collections library f.eks. har kun dobbeltkædede lister.
En kø (queue) bruges, når du har brug for at tage elementer ud fra din collection i samme rækkefølge som de blev tilføjet i. Dette kaldes også en FIFO (first in - first out) sequence. Et eksempel er læsning fra tastaturet. Den første tast, brugeren trykker på, skal også processeres først.
En stak (stack) bruges, når du har brug for hele tiden at tage det nyeste element ud af køen. Dette kaldes også en FIFO (last in - first out) sequence. Et eksempel er en undo liste. Den seneste handling skal omgøres først, hvis brugeren skal vende tilbage til et tidligere punkt i sit arbejde.
Ups, godt set. Det fremgår jo også af parentesen, at det er det, jeg mener (LIFO er jo det samme som FILO).
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.