C # Pino esimerkin kanssa

Sisällysluettelo:

Anonim

Mikä on pino C #: ssä?

Pino on erikoistapauskokoelma, joka edustaa viimeistä ensin ulos -tekniikkaa (LIFO). Otetaan ensin esimerkki LIFOn ymmärtämiseksi. Kuvittele pino kirjoja, joissa jokainen kirja pidetään päällekkäin.

Käsite last in first out kirjoissa tarkoittaa, että vain eniten kirjaa voidaan poistaa kirjojen pinosta. Kirjaa ei voida poistaa niiden väliltä, ​​koska se häiritsisi pinon asetusta.

Siksi C #: ssä pino toimii myös samalla tavalla. Elementit lisätään pinoon yksi päällekkäin. Elementin lisäämistä pinoon kutsutaan push-toiminnoksi. Jos haluat poistaa elementin pinosta, voit myös poistaa pinon ylimmän osan. Tätä toimintoa kutsutaan popiksi.

Tarkastellaan Stack-kokoelman käytettävissä olevia toimintoja tarkemmin.

Pinoilmoitus

Pino luodaan pinotietotyypin avulla. Avainsanalla "uusi" käytetään pinon objektin luomiseen. Objekti osoitetaan sitten muuttujalle st.

Stack st = new Stack()

Elementtien lisääminen pinoon

Työntömenetelmää käytetään lisäämään elementti pinoon. Lausunnon yleinen syntakse on annettu alla.

Stack.push(element)

Elementtien poistaminen pinosta

Pop-menetelmää käytetään elementin poistamiseen pinosta. Pop-toiminto palauttaa pinon ylimmän osan. Lausunnon yleinen syntakse on annettu alla

 Stack.pop()

Kreivi

Tätä ominaisuutta käytetään pinon kohteiden määrän saamiseen. Alla on tämän lauseen yleinen syntaksit.

Stack.Count

Sisältää

Tätä menetelmää käytetään selvittämään, onko pinossa elementti. Alla on tämän lauseen yleinen syntaksit. Lauseke palauttaa arvon true, jos elementti on olemassa, muuten se palauttaa arvon false.

Stack.Contains(element)

Katsotaan nyt, että tämä toimii kooditasolla. Kaikki alla mainitut koodit kirjoitetaan konsolisovelluksemme. Koodi kirjoitetaan Program.cs-tiedostoon.

Seuraavassa ohjelmassa kirjoitamme koodin nähdäksesi, kuinka voimme käyttää edellä mainittuja menetelmiä.

Esimerkki 1

Tässä esimerkissä näemme

  • Kuinka pino luodaan.
  • Kuinka näyttää pinon elementit ja käyttää Count and Contain -menetelmiä.

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();}}}

Koodin selitys: -

  1. Ensimmäistä vaihetta käytetään pinon ilmoittamiseen. Tässä julistetaan "st" muuttujaksi pinon elementtien pitämiseksi.
  2. Seuraavaksi lisätään 3 elementtiä pinoamme. Jokainen elementti lisätään Push-menetelmällä.
  3. Koska pinoelementteihin ei pääse hakemistopaikan kautta, kuten taulukkoluettelossa, meidän on käytettävä erilaista lähestymistapaa pinon elementtien näyttämiseen. Object (obj) on väliaikainen muuttuja, joka ilmoitetaan pinon jokaisen elementin pitämisestä. Sitten käytämme foreach-käskyä käydä läpi kaikki pinon elementit. Jokaiselle pinoelementille arvo määritetään obj-muuttujalle. Sitten käytämme arvoa konsolille Console.Writeline-komennolla.
  4. Käytämme Count-ominaisuutta ( st.count ) saadaksesi pinon kohteiden määrän. Tämä ominaisuus palauttaa numeron. Näytämme tämän arvon konsolille.
  5. Sitten käytämme Sisältää-menetelmää nähdäksesi, onko 3: n arvo pinossa. Tämä palauttaa joko tosi tai väärän arvon. Näytämme tämän palautusarvon konsolille.

Jos yllä oleva koodi syötetään oikein ja ohjelma suoritetaan, seuraava lähtö näytetään.

Tuotos:

Tuloksesta voimme nähdä, että pinon elementit näytetään. True-arvo näytetään myös sanomalla, että arvo 3 on määritelty pinossa.

Huomaa : Olet huomannut, että viimeinen pinoon työnnetty elementti näkyy ensin. Tämä on pinon ylin osa. Pinoelementtien määrä näkyy myös lähdössä.

Esimerkki 2

Katsotaan nyt "poista" -toimintoa. Näemme koodin, jota tarvitaan ylimmän elementin poistamiseen pinosta.

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();}}}

Koodin selitys: -

  1. Tässä annamme vain pop-menetelmän, jota käytetään elementin poistamiseen pinosta.

Jos yllä oleva koodi syötetään oikein ja ohjelma suoritetaan, seuraava lähtö näytetään.

Tuotos:

Voimme nähdä, että elementti 3 poistettiin pinosta.

Yhteenveto

  • Pino perustuu viimeiseen ensimmäisenä -konseptiin. Elementin lisäämistä pinoon kutsutaan työntöoperaatioksi. Elementin poistamista pinosta kutsutaan pop-toiminnoksi.