C # Stack med eksempel

Innholdsfortegnelse:

Anonim

Hva er Stack in C #?

Stakken er en spesiell sakssamling som representerer et siste inn først ut (LIFO) konsept. For å først forstå LIFO, la oss ta et eksempel. Se for deg en bunke med hver bok som er oppå hverandre.

Konseptet med siste ut først når det gjelder bøker betyr at bare den øverste boken kan fjernes fra bunken. Det er ikke mulig å fjerne en bok mellom, for da vil det forstyrre innstillingen av bunken.

Derfor i C # fungerer stabelen også på samme måte. Elementer legges til bunken, hver på toppen av hverandre. Prosessen med å legge til et element i stakken kalles en push-operasjon. For å fjerne et element fra en bunke, kan du også fjerne det øverste elementet i bunken. Denne operasjonen er kjent som pop.

La oss se på operasjonene som er tilgjengelige for Stack-samlingen mer detaljert.

Erklæring om stabelen

En stabel opprettes ved hjelp av typen Stack Data. Nøkkelordet "nytt" brukes til å lage et objekt av en stabel. Objektet tildeles deretter variabelen st.

Stack st = new Stack()

Legge til elementer i bunken

Push-metoden brukes til å legge til et element på bunken. Uttalelsens generelle syntaks er gitt nedenfor.

Stack.push(element)

Fjerne elementer fra bunken

Pop-metoden brukes til å fjerne et element fra bunken. Popoperasjonen vil returnere det øverste elementet i stakken. Uttalelsens generelle syntaks er gitt nedenfor

 Stack.pop()

Telle

Denne egenskapen brukes til å hente antall elementer i bunken. Nedenfor er den generelle syntaksen for denne uttalelsen.

Stack.Count

Inneholder

Denne metoden brukes til å se om et element er tilstede i stakken. Nedenfor er den generelle syntaksen for denne uttalelsen. Uttalelsen vil returnere sant hvis elementet eksisterer, ellers vil den returnere verdien falsk.

Stack.Contains(element)

La oss nå se at dette fungerer på kodenivå. All koden nedenfor blir skrevet til konsollapplikasjonen. Koden vil bli skrevet til vår Program.cs-fil.

I programmet nedenfor vil vi skrive koden for å se hvordan vi kan bruke de ovennevnte metodene.

Eksempel 1

I dette eksemplet vil vi se

  • Hvordan en stabel blir opprettet.
  • Hvordan vise elementene i stakken, og bruke Count and Contain-metodene.

using System;using System.Collections;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace DemoApplication{class Program{static void Main(string[] args){Stack st = new Stack();st.Push(1);st.Push(2);st.Push(3);foreach (Object obj in st){Console.WriteLine(obj);}Console.WriteLine(); Console.WriteLine();Console.WriteLine("The number of elements in the stack " +st.Count);Console.WriteLine("Does the stack contain the elements 3 "+st.Contains(3));Console.ReadKey();}}}

Kode Forklaring: -

  1. Det første trinnet brukes til å erklære Stack. Her erklærer vi "st" som en variabel for å holde elementene i stakken vår.
  2. Deretter legger vi til 3 elementer i stakken vår. Hvert element legges til via Push-metoden.
  3. Nå siden stabelelementene ikke er tilgjengelige via indeksposisjonen, som matriselisten, må vi bruke en annen tilnærming for å vise elementene i stakken. Objektet (obj) er en midlertidig variabel som blir erklært for å holde hvert element i bunken. Vi bruker deretter foreach-setningen for å gå gjennom hvert element i bunken. For hvert stakkelement tildeles verdien til obj-variabelen. Vi bruker deretter Console.Writeline-kommandoen for å vise verdien til konsollen.
  4. Vi bruker Count-egenskapen ( st.count ) for å få antall elementer i bunken. Denne eiendommen vil returnere et nummer. Vi viser deretter denne verdien til konsollen.
  5. Vi bruker deretter Inneholder-metoden for å se om verdien av 3 er tilstede i stakken vår. Dette vil returnere enten en sann eller falsk verdi. Vi viser deretter denne returverdien til konsollen.

Hvis koden ovenfor er angitt riktig og programmet kjøres, vises følgende utdata.

Produksjon:

Fra utgangen kan vi se at elementene i stakken vises. Verdien av True vises også for å si at verdien av 3 er definert på bunken.

Merk : Du har lagt merke til at det siste elementet som ble presset på bunken vises først. Dette er det øverste elementet i stakken. Antall stabelelementer vises også i utdataene.

Eksempel 2

La oss nå se på "fjern" -funksjonaliteten. Vi ser koden som kreves for å fjerne det øverste elementet fra bunken.

using System;using System.Collections;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace DemoApplication{class Program{static void Main(string[] args){Stack st = new Stack();st.Push(1);st.Push(2);st.Push(3);st.Pop();foreach (Object obj in st){Console.WriteLine(obj);}Console.ReadKey();}}}

Kode Forklaring: -

  1. Her utsteder vi bare popmetoden som brukes til å fjerne et element fra stakken.

Hvis koden ovenfor er angitt riktig og programmet kjøres, vises følgende utdata.

Produksjon:

Vi kan se at elementet 3 ble fjernet fra bunken.

Sammendrag

  • A Stack er basert på det siste inn først ut-konseptet. Operasjonen med å legge til et element i stakken kalles push-operasjonen. Operasjonen med å fjerne et element til bunken kalles popoperasjon.