I C#er LinkedList en der elementer er lagret på ikke-sammenhengende steder. Det er en lineær datastruktur. En koblet listens elementer kommuniserer med hverandre via pekere. Med enkle ord består den av noder, hver node omfatter et datafelt og en lenke til neste node i listen. I dobbelt_linkert liste peker hver node i listen frem til følgende node og bakover til foregående node. Det gir også mulighet for rask innsetting og fjerning av varer. Det er definert i systemet.Samlinger.Generisk navneområde.
Hvordan lage en LinkedList i C#
For å lage LinkedList i C#, har vi tre konstruktører.
LinkedList (): For å lage en tom forekomst av LinkedList -klasse, bruker vi "LinkedList ()" -konstruktøren.
LinkedList (iEnumerable): For å lage en forekomst av LinkedList -klassen som inneholder elementer som er kopiert fra IEnumerable, bruker vi "LinkedList (IEnumerable)" -konstruktøren. Den har nok plass til å holde antall objekter som kopieres.
LinkedList (SerializationInfo, StreamingContext): Det brukes til å lage en forekomst som er serialisert ved hjelp av serialieringInfo og streamingcontext -parameteren.
Eksempel 1
Vi skriver koden som er gitt i dette eksemplet og lagrer denne filen med et hvilket som helst navn. Vi vil bruke utvidelsen “.CS ”for å lagre denne filen.
I koden ovenfor bruker vi nøkkelordet "Bruker" i den første linjen for å inkludere navneområder. Nå har vi “Bruke systemet.Samlinger.Generisk ”navneområde. Etter det har vi en klasse; “Liste” er klassenavnet. Etter det er det en "main ()" -metode. Hovedmetoden beskriver hva klassen gjør når den kjøres og lager flere objekter og variabler. Det er programmets utgangspunkt, og det kjører uten engang å lage et klasseobjekt. I krøllete seler har vi "LinkedList" som brukes til å lage en LinkedList av datatype -streng.
Etter dette bruker vi “My_list.Addlast () ”for å legge til noder til LinkedList. Den nye noden vil legge til på den siste av lenke ved å bruke "addlast" -metoden. Metoden “My_list.Addlast (“Harry”) ”vil legge navnet til“ Harry ”til LinkedList. Ved å bruke denne metoden, legger vi til "Peter", "Leo", "George", "Ronan", "Alice" og "Danil" til Linkedlist. Etter dette har vi “konsollen.WritLine ”nøkkelord som brukes til utdata. Alt skrevet i parentes vil skrive ut på skjermen.
Nå bruker vi "foreach" -sløyfen for å få tilgang til elementene i LinkedList. Ved å bruke "foreach (String str in my_list)", vil vi få tilgang til alle strengene som er til stede i "my_list" LinkedList. Etter dette bruker vi “Console.WritLine (STR) ”som viser alle strengene i dette programmet. Nå vil vi lukke alle krøllete seler.
Samarbeide et C# -program i Ubuntu 20.04
For å sammenstille programmet ovenfor, vil vi bruke følgende kommando.
Her i denne koden, “List1.CS ”er navnet på filen som vi ønsker å kompilere, og“ MCS ”er monokompilatoren til C#. Skriv inn denne kommandoen og trykk Enter. “.exe ”-filen vil bli generert for oss.
Utførelse av C# -program i Ubuntu 20.04
Skriv inn kommandoen gitt nedenfor for utførelse av dette C# -programmet, som er samlet i trinnet ovenfor.
Kommandoen “Mono” kjører et mono -program som er samlet. “Mono List1.EXE ”kan brukes til å utføre“ List1.exe ”-program. Etter utførelse vises følgende liste på skjermen som vist nedenfor.
Eksempel 2: For å sjekke verdien
Her i denne koden har vi søkt om verdien som er gitt er i LinkedList eller ikke. Hvis verdien eller strengen er til stede i LinkedList, vil den returnere sant, noe som betyr at strengen eller verdien er til stede i den. Følgende kode brukes til dette.
I denne koden brukes "bruk av system" til å legge til navneområder. Etter dette har vi “Bruke system.Samlinger ”som betyr at vi bruker samlingsklasser. Disse klassene brukes til mange formål. De vil lage objektsamlinger. Deretter har vi “Bruke system.Samlinger.Generisk ”som brukes til navneområdet i programmet. Så har vi en klasse som heter “Chklist”. Etter klassen legger vi krøllete seler, og inne i de krøllete seler vi definerer, "Main ()" -funksjonen.
Inne. Nå for å legge til noder bruker vi “my_list.Addlast () ”. Vi kan legge til "datamaskin" i LinkedList når vi bruker my_list.Addlast (“Datamaskin”). Ved å bruke samme linje, legger vi til "Laptop", "Mobile" og "Camera" til LinkedList. Vi diskuterte alle disse elementene i eksemplet ovenfor i detalj.
Etter dette skriver vi “konsoll.WritLine (my_list.Inneholder ("bærbar PC") "" Når denne linjen er utført, vil den sjekke om denne koblingslisten inneholder "bærbar PC" eller ikke. Det vil returnere "sant" hvis LinkedList inneholder "bærbar PC".
For sammenstilling og utførelse av dette programmet ovenfor, skriver vi kommandoene gitt nedenfor på terminalen.
Her i denne utgangen ser vi at den returnerer det sanne resultatet, noe som betyr at LinkedList inneholder "bærbar PC".
Eksempel 3: For å fjerne noden
Her vil vi forklare et annet eksempel der vi sletter eller fjerner den første verdien fra LinkedList og vil få antallet verdier.
I denne koden bruker vi nøkkelordet “Bruker” som vi forklarte i det første eksemplet. Deretter bruker vi “Bruke systemet.Samlinger.Generisk ”navneområde som vi har diskutert i detalj i vårt forrige eksempel. Etter det har vi en klasse som heter “Fjern”. Deretter dannes "Main ()" "-funksjonen. "Strengen [] args" betegner argumentene for denne funksjonen. Etter “Main ()” genererer vi en LinkedList av et heltall ved å bruke “LinkedList”. Deretter legger vi til forskjellige noder ved hjelp av “my_list.Addlast () ”.
Når vi skriver “my_list.Addlast (20) ”, det vil legge til en node 20 i LinkedList. Nå legger vi til “10,20,30,40” ved å bruke samme metode. For å få utgangen fra tellingen av noder, bruker vi “Console.WritLine ”og tell nodene ved å bruke“ MY_LIST.Tell ”og vil skrive ut tellingen av noder før du fjerner en node. Så bruker vi "foreach" -sløyfen som viser nodene på LinkedList.
I “foreach (int i in my_list)” representerer “int” heltallverdiene i “my_list”. I krøllete seler vil vi skrive ut verdiene til “jeg” ved å bruke “konsoll.WritLine (i) ”. Nå fjerner vi den første noden ved å bruke “my_list.Fjern (my_list.Først) ”og bruk deretter“ My_list.Tell ”for å få tellingen av noder i programmet vårt og vise det ved hjelp av“ Console.WritLine ”. Etter dette bruker vi "foreach" -sløyfen som diskutert ovenfor for å skrive ut alle nodene etter å ha fjernet den første noden. Etter å ha fullført koden ovenfor, lagre denne filen.
Nå vil vi få output ved å skrive kommandoen gitt nedenfor på bildet. Først sammenstiller vi programmet og utfører det deretter.
I denne utgangen ser vi at den skriver ut antall noder og deretter viser alle nodene i en liste. Etter det fjerner den den første noden og skriver ut antallet av de gjenværende nodene, og viser deretter de gjenværende nodene.
Konklusjon
I denne artikkelen har vi lært at en koblet liste er en gruppe noder og hver node inneholder et dataelement og en peker foran som peker på adressen til minnet til den kommende noden. Fordi vi ikke kan få elementene tilfeldig når vi kommer i matriser, så passerer det gjennom det er raffinert. Sammenlignet med matriser, er innsetting av innlettingshandlinger billige. Vi studerte også mye om LinkedList ved å bruke forskjellige eksempler som er veldig nyttige for brukere i fremtiden.