Wat is wachtrij in C #?
The Queue is een speciale case-collectie die een first-in-first-out concept vertegenwoordigt. Stel je een rij mensen voor die op de bus wacht. Normaal gesproken zal de eerste persoon die in de rij komt, de eerste persoon zijn die de bus betreedt. Evenzo zal de laatste persoon die de wachtrij betreedt, de laatste persoon zijn die de bus binnengaat. Elementen worden aan de wachtrij toegevoegd, één boven elkaar.
Het proces van het toevoegen van een element aan de wachtrij is de enqueuer-bewerking. Om een element uit een wachtrij te verwijderen, kunt u de dequeuer-bewerking gebruiken. De bewerking in wachtrijen is vergelijkbaar met stack die we eerder zagen.
Laten we de bewerkingen die beschikbaar zijn voor de wachtrijcollectie in meer detail bekijken.
Verklaring van de wachtrij
De verklaring van een wachtrij wordt hieronder gegeven. Een wachtrij wordt gemaakt met behulp van het wachtrijgegevenstype. Het sleutelwoord "nieuw" wordt gebruikt om een object van een wachtrij te maken. Het object wordt vervolgens toegewezen aan de variabele qt.
Queue qt = new Queue()
Elementen toevoegen aan de wachtrij
De enqueue-methode wordt gebruikt om een element aan de wachtrij toe te voegen. De algemene syntaxis van de verklaring wordt hieronder gegeven.
Queue.enqueue(element)
Elementen uit de wachtrij verwijderen
De dequeue-methode wordt gebruikt om een element uit de wachtrij te verwijderen. De bewerking voor het verwijderen van wachtrij retourneert het eerste element van de wachtrij. De algemene syntaxis van de verklaring wordt hieronder gegeven
Queue.dequeue()
Tellen
Deze eigenschap wordt gebruikt om het aantal items in de wachtrij op te halen. Hieronder staat de algemene syntaxis van deze verklaring.
Queue.Count
Bevat
Deze methode wordt gebruikt om te zien of een element aanwezig is in de wachtrij. Hieronder staat de algemene syntaxis van deze verklaring. De instructie retourneert true als het element bestaat, anders wordt de waarde false geretourneerd.
Queue.Contains(element)
Laten we dit nu eens op codeniveau zien werken. Alle onderstaande code wordt naar onze consoletoepassing geschreven.
De code wordt naar ons Program.cs-bestand geschreven. In het onderstaande programma zullen we de code schrijven om te zien hoe we de bovengenoemde methoden kunnen gebruiken.
Voorbeeld
In dit voorbeeld zullen we zien hoe een wachtrij wordt aangemaakt. Vervolgens zullen we zien hoe we de elementen van de wachtrij kunnen weergeven en de methoden Count en Contain kunnen gebruiken.
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){Queue qt = new Queue();qt.Enqueue(1);qt.Enqueue(2);qt.Enqueue(3);foreach (Object obj in qt){Console.WriteLine(obj);}Console.WriteLine(); Console.WriteLine();Console.WriteLine("The number of elements in the Queue " + qt.Count);Console.WriteLine("Does the Queue contain " + qt.Contains(3));Console.ReadKey();}}}
Code Verklaring
- De eerste stap wordt gebruikt om de wachtrij te declareren. Hier verklaren we qt als een variabele om de elementen van onze wachtrij vast te houden.
- Vervolgens voegen we 3 elementen toe aan onze wachtrij. Elk element wordt toegevoegd via de "enqueue" -methode.
- Een ding dat moet worden opgemerkt over wachtrijen is dat de elementen niet toegankelijk zijn via de indexpositie zoals de arraylijst. We moeten een andere benadering gebruiken om de elementen van de wachtrij weer te geven. Dus hier is hoe we de elementen van een wachtrij weergeven.
- We declareren eerst een tijdelijke variabele genaamd obj. Dit wordt gebruikt om elk element van de wachtrij vast te houden.
- Vervolgens gebruiken we de foreach-instructie om elk element van de wachtrij te doorlopen.
- Voor elk Queue-element wordt de waarde toegewezen aan de obj-variabele.
- Vervolgens gebruiken we de opdracht Console.Writeline om de waarde op de console weer te geven.
- We gebruiken de eigenschap "Count" om het aantal items in de wachtrij te krijgen. Deze eigenschap retourneert een getal. We geven deze waarde vervolgens weer op de console.
- We gebruiken dan de "Bevat" methode om te zien of de waarde van 3 aanwezig is in onze wachtrij. Dit retourneert een true of false waarde. We geven deze retourwaarde vervolgens weer op de console.
Als de bovenstaande code correct is ingevoerd en het programma wordt uitgevoerd, wordt de volgende uitvoer weergegeven.
Uitvoer
Aan de output kunnen we duidelijk zien dat de elementen van de wachtrij worden weergegeven. Merk op dat, in tegenstelling tot "stapel" in "wachtrij", het eerste element dat naar de wachtrij wordt geduwd als eerste wordt weergegeven. Het aantal wachtrij-elementen wordt ook weergegeven in de uitvoer. Ook wordt de waarde van True weergegeven om aan te geven dat de waarde van 3 is gedefinieerd in de wachtrij.
C # Wachtrij verwijderen
Laten we nu eens kijken naar de verwijderfunctionaliteit. We zullen de code zien die nodig is om het laatste element uit de wachtrij te verwijderen.
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){Queue qt = new Queue();qt.Enqueue(1);qt.Enqueue(2);qt.Enqueue(3);qt.Dequeue();foreach (Object obj in qt){Console.WriteLine(obj);}Console.ReadKey();}}}
Code Verklaring
- Hier geven we gewoon de "dequeue" -methode uit, die wordt gebruikt om een element uit de wachtrij te verwijderen. Met deze methode wordt het eerste element van de wachtrij verwijderd.
Als de bovenstaande code correct is ingevoerd en het programma wordt uitgevoerd, wordt de volgende uitvoer weergegeven.
Uitgang:
Aan de output kunnen we zien dat het eerste element dat aan de wachtrij werd toegevoegd, namelijk element 1, uit de wachtrij werd verwijderd.
Overzicht
- Een wachtrij is gebaseerd op het first in first out-concept. De bewerking van het toevoegen van een element aan de wachtrij wordt de bewerking in wachtrij plaatsen genoemd. De bewerking van het verwijderen van een element uit de wachtrij wordt de bewerking voor het verwijderen van wachtrij genoemd.