परिचय
C# में Queue.Enqueue() मेथड Queue के अंत में एक ऑब्जेक्ट जोड़ता है। यह FIFO (फर्स्ट-इन-फर्स्ट-आउट) डेटा संरचना का मूल ऑपरेशन है।
सिंटैक्स
public virtual void Enqueue(object obj);
जेनेरिक Queue<T> के लिए: public void Enqueue(T item);
उदाहरण 1: जोड़ना, हटाना, क्लियर करना
using System;
using System.Collections.Generic;
public class Demo {
public static void Main() {
Queue queue = new Queue();
queue.Enqueue("Gary");
queue.Enqueue("Jack");
queue.Enqueue("Ryan");
queue.Enqueue("Kevin");
queue.Enqueue("Mark");
queue.Enqueue("Jack");
queue.Enqueue("Ryan");
queue.Enqueue("Kevin");
Console.Write("तत्वों की संख्या = ");
Console.WriteLine(queue.Count);
Console.WriteLine("Queue...");
foreach (string i in queue) {
Console.WriteLine(i);
}
queue.Dequeue();
queue.Dequeue();
Console.WriteLine("Queue...अपडेटेड");
foreach (string i in queue) {
Console.WriteLine(i);
}
Console.Write("तत्वों की संख्या (अपडेटेड) = " + queue.Count);
queue.Clear();
Console.Write("\nतत्वों की संख्या (फिर अपडेटेड) = ");
Console.WriteLine(queue.Count);
}
}
आउटपुट
तत्वों की संख्या = 8 Queue... Gary Jack Ryan Kevin Mark Jack Ryan Kevin Queue...अपडेटेड Ryan Kevin Mark Jack Ryan Kevin तत्वों की संख्या (अपडेटेड) = 6 तत्वों की संख्या (फिर अपडेटेड) = 0
उदाहरण 2: बीच में और जोड़ना
using System;
using System.Collections.Generic;
public class Demo {
public static void Main() {
Queue queue = new Queue();
queue.Enqueue("Gary");
queue.Enqueue("Jack");
queue.Enqueue("Ryan");
queue.Enqueue("Kevin");
queue.Enqueue("Mark");
Console.WriteLine("Queue...");
foreach (string i in queue) {
Console.WriteLine(i);
}
Console.Write("तत्वों की संख्या = ");
Console.WriteLine(queue.Count);
queue.Enqueue("Jack");
queue.Enqueue("Ryan");
queue.Enqueue("Kevin");
Console.WriteLine("\nQueue...अपडेटेड");
foreach (string i in queue) {
Console.WriteLine(i);
}
Console.Write("तत्वों की संख्या (अपडेटेड) = ");
Console.WriteLine(queue.Count);
queue.Dequeue();
queue.Dequeue();
Console.WriteLine("\nQueue...अपडेटेड");
foreach (string i in queue) {
Console.WriteLine(i);
}
Console.Write("तत्वों की संख्या = ");
Console.WriteLine(queue.Count);
queue.Clear();
Console.Write("\nतत्वों की संख्या (फिर अपडेटेड) = ");
Console.WriteLine(queue.Count);
}
}
आउटपुट
Queue... Gary Jack Ryan Kevin Mark तत्वों की संख्या = 5 Queue...अपडेटेड Gary Jack Ryan Kevin Mark Jack Ryan Kevin तत्वों की संख्या (अपडेटेड) = 8 Queue...अपडेटेड Ryan Kevin Mark Jack Ryan Kevin तत्वों की संख्या = 6 तत्वों की संख्या (फिर अपडेटेड) = 0
मुख्य बिंदु
Enqueue()तत्व को क्यू के पीछे (टेल) जोड़ता है।Dequeue()सामने (हेड) से हटाता और वापस करता है।Peek()हटाए बिना सामने का तत्व वापस करता है।- खाली क्यू पर
Dequeue()/Peek()सेInvalidOperationExceptionफेंकता है। - जेनेरिक
Queue<T>टाइप सेफ्टी और बॉक्सिंग से बचने के लिए पसंदीदा है। - समय जटिलता: O(1) एमोर्टाइज्ड।