Forskjellen mellom enkeltlenket liste og dobbeltlenket liste

Forskjellen mellom enkeltlenket liste og dobbeltlenket liste
Forskjellen mellom enkeltlenket liste og dobbeltlenket liste
Anonim

Singly Linked List vs Double Linked List

Linked list er en lineær datastruktur som brukes til å lagre en samling av data. En koblet liste tildeler minne til elementene separat i sin egen minneblokk, og den overordnede strukturen oppnås ved å koble disse elementene som ledd i en kjede. En enkeltlenket liste består av en sekvens av noder og hver node har en referanse til neste node i sekvensen. En dobbeltkoblet liste inneholder en sekvens av noder der hver node inneholder en referanse til neste node så vel som til forrige node.

Singly Linked List

Hvert element i en enkeltlenket liste har to felt som vist i figur 1. Datafeltet inneholder de faktiske dataene som er lagret og det neste feltet inneholder referansen til neste element i kjeden. Det første elementet i den koblede listen lagres som hodet på den koblede listen.

Bilde
Bilde

Figur 2 viser en enkeltlenket liste med tre elementer. Hvert element lagrer dataene sine, og alle elementene unntatt det siste lagrer en referanse til det neste elementet. Siste element har en nullverdi i neste felt. Ethvert element i listen kan nås ved å starte på toppen og følge neste peker til du oppfyller det nødvendige elementet.

Double Linked List

Hvert element i en dobbeltlenket liste har tre felt som vist i figur 3. I likhet med enkeltlenket liste, inneholder datafeltet de faktiske dataene som er lagret, og det neste feltet inneholder referansen til neste element i kjeden. I tillegg inneholder det forrige feltet referansen til det forrige elementet i kjeden. Det første elementet i den koblede listen lagres som hodet på den koblede listen.

Bilde
Bilde

Figur 4 viser en dobbelt koblet liste med tre elementer. Alle de mellomliggende elementene lagrer referanser til de første og forrige elementene. Det siste elementet i listen har en nullverdi i det neste feltet og det første elementet i listen har en nullverdi i det forrige feltet. Dobbeltlenket liste kan krysses fremover ved å følge de neste referansene i hvert element, og kan på samme måte krysses bakover ved å bruke de tidligere referansene i hvert element.

Hva er forskjellen mellom Liste med enkeltkoblede og dobbeltkoblede liste?

Hvert element i den enkeltlenkede listen inneholder en referanse til det neste elementet i listen, mens hvert element i den dobbeltlenkede listen inneholder referanser til det neste elementet så vel som det forrige elementet i listen. Dobbeltkoblede lister krever mer plass for hvert element i listen, og elementære operasjoner som innsetting og sletting er mer komplekse siden de må håndtere to referanser. Men doble lenkelister gjør det enklere å manipulere siden det gjør det mulig å krysse listen forover og bakover.

Anbefalt: