C # Hashset

C # Hashset
I C Sharp er et hashset en beholder som er en samling av gjenstander som ikke er til stede i en bestillingsform. Dette hashset brukes når vi ikke vil ha duplisert data. Hashset fungerer som lister, men ytelsen deres er bedre enn lister. Hashset kan bare lagre samme type varer. Det er en dynamisk samling, størrelsen på hashset øker når vi legger til flere elementer til den. Denne artikkelen vil inneholde opprettelse og tillegg av elementer til hashset.

Eksempel 1

For å starte et program for hashset i C Sharp, vil vi bruke to biblioteker i kildekoden. Den ene er systemet og den andre er systemet.samlinger. Generiske, disse begge toppfilene spiller en viktig rolle i å bruke klasser og innebygde funksjoner til programmet.

Ved hjelp av system;
Bruke system.Samlinger.Generisk;

Metode 1:

Inne i klassen er hovedprogrammet erklært. For å lage et hashset, bruker vi en hashset -klasse som er til stede i samlingsbiblioteket. Et nytt hashset opprettes ved å bruke et nytt nøkkelord, ettersom det er involvert i den dynamiske opprettelsen av hashset. Et hashset er en strengvariabel, ettersom den inneholder alle typer symboler, alfanumeriske verdier osv. Etter hashset -nøkkelordet er navnet på hashset definert.

# Hashset MyHash1 = nytt hashset ();

Når hashset er opprettet, vil vi nå begynne å legge til gjenstander til hashset etter hverandre. Dette tillegget gjøres manuelt. Den viktigste innebygde funksjonen som brukes til å legge inn verdier er 'add ()' -funksjonen til C #. Denne funksjonen kalles med navnet på et nytt hashset som fungerer som et objekt. Verdien som skal legges inn i hashset brukes som et argument i parameteren til ADD -funksjonen.

# MYHASH1.Legg til ("C");

Vi har lagt inn 5 verdier til hashset ved å bruke samme tillegg (). ADD -funksjonen fungerer som en append () -funksjon av strengen som fortsetter å legge til verdiene på slutten av strengen. Etter å ha lagt til verdier, vil vi vise dem. For å få tilgang til elementer i et hashset, vil vi bruke en foreach -sløyfe. Denne sløyfen vil iterere til det siste elementet i hashset.

Metode 2:

En annen måte å lage et hashset er å lage det ved å bruke en samling initialisator som initialiserer hashset. Dette er forskjellig fra metode 1, da vi trenger å bruke en add () -funksjon for å legge til elementer. Men ved å bruke denne initialisatoren, kan vi legge til verdier på tidspunktet for å erklære og opprette hashset.

# Hashset MyHash2 = Ny hashset () 10, 100, 1000, 10000, 100000;

Her er hashset av heltalldatatype. 5 Heltallverdier legges inn i funksjonen da opprettelsen ble utført dynamisk.

For å vise elementene i dette hashset, bruker vi igjen en foreach -sløyfe slik at den får tilgang til det siste elementet i hashset.

Lagre koden, og dette vil bli utført i terminalen gjennom MCS -kompilatoren og en mono som brukes til utførelsen.

$ MCS -fil.CS
$ mono -fil.EXE

Du kan se at ved å bruke en foreach -sløyfe vises hvert element i hashset.

Eksempel 2

Etter å ha lagt til elementer, kan disse elementene og hashset modifiseres ved å fjerne dem eller legge til nye elementer i hashset. Nå skal vi skrive et enkelt program for å fjerne elementer fra hashset.

Så først og fremst vil vi igjen lage et nytt hashset, som vi gjorde før ved å bruke hashset -klassen, og ved å bruke ADD () -metoden, vil alle elementene bli lagt til.

Før fjerning av noe element, vil vi vise antall elementer som allerede er til stede i hashset. Dette vil bli gjort gjennom en motfunksjon. Denne tellingen () -funksjonen vil bli kalt gjennom hashset -objektet.

# Myhash.telle ();

Etter at alle varene er vist en gang, vil vi nå fjerne varen fra hashset ved å bruke en fjerningsfunksjon.

# Myhash.Fjern ("Ruby");

I parameteren for fjerningsfunksjonen passerer vi varen som vi vil fjerne. Etter fjerning, igjen, vil tellefunksjonen telle elementene som er igjen etter å ha fjernet et element. På samme måte kan vi fjerne flere gjenstander. Men hvis noen vil få hele hashset tom, gjøres dette ved å bruke en klar () funksjon. Dette brukes til å fjerne alle elementer fra hashset. Det kalles også hashset -objektet.

# Myhash.klar();

Da vil vi sjekke om hashset er tomt eller ikke ved å telle elementene gjennom grev () -funksjonen.

Eksempel 3

Nå jobber med de faste operasjonene, inneholder hashset -klassen noen metoder som brukes til å bruke noen operasjoner på hashset. En av dem er en union med. Denne operasjonen brukes til å endre gjeldende hashset ved å legge til helt nye elementer til den. Alle nye varer er vedlagt med den forrige. Men for å holde integriteten fjernes duplikatelementene. For eksempel, mens du legger til elementer ganske enkelt til et hashset, hvis et hashset allerede har C skarpt, men vi legger igjen varen C skarpt, så vil dette bli lagt til gjeldende elementer. Men ved å bruke unionsoperasjonen fjernes duplisering; Hvis en vare skal legges til hvis det allerede eksisterer, vil det vises en eneste gang; Dette er union. Dette er utdypet i et eksempel.

Først vil vi lage et hashset og deretter legge til noen få ting til det. Etter det, igjen, lag en annen hashset gjennom en hashset -klasse, og legg deretter til et element til den gjennom ADD () -funksjonen. Å legge til elementer skal følges på en slik måte at noen gjenstander skal være de samme som vi har lagt inn i hashset. Nå inneholder begge hashsetene alle varene separat. Vi vil bli med dem gjennom en spesifisert funksjon.

Nå vil vi bruke en Uniowith () -metode slik at vi kan fjerne de kopierte gjenstandene som oppstår to ganger i hashset på Unionstidspunktet. Denne funksjonen kalles gjennom objektet til det første hashset, og deretter vil parameteren ta objektet med det andre hashset.

# MYHASH1.UnionWith (MyHash2);

Ved å bruke det er alle varene til stede i første hashset. Da vil vi skrive ut verdiene fra første hashset.

# IntersectWith ()

I motsetning til UnionWith (), er det en annen operatør som brukes til å få de varene som er kopiert. Med andre ord er disse elementene fra hashset valgt som vises to ganger i hashset. Så for å implementere dette, vil vi følge det samme eksemplet ovenfor; Vi vil lage to hashset og deretter legge til verdier til dem. Etter det vil vi bruke kryssfunksjonen ved å bruke gjenstandene til hashsettene.

# MYHASH1.IntersectWith (MyHash2);

Fra resultatene kan du se at bare to verdier var like.

Konklusjon

Hashset kan opprettes ved å bruke to tilnærminger. Den ene er fra hashset -klassen som er definert i toppfilbiblioteket. Og den andre er gjennom samlingen Initializer. Begge bruker forskjellige metodologier for å legge til elementer i hashset. Vi kan også endre elementer når de er lagt inn i hashset. Ved å bruke et hashset er det enkelt å legge til eller eliminere ethvert element. To grunnleggende operasjoner er også nevnt her som brukes til å administrere hashset -elementer. Vi har forklart alle disse funksjonene i hashsettene gjennom elementære eksempler som er implementert i Ubuntu -operativsystemet.