- Data Structure
- Networking
- RDBMS
- Operating System
- Java
- MS Excel
- iOS
- HTML
- CSS
- Android
- Python
- C Programming
- C++
- C#
- MongoDB
- MySQL
- Javascript
- PHP
- Physics
- Chemistry
- Biology
- Mathematics
- English
- Economics
- Psychology
- Social Studies
- Fashion Studies
- Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Stack and Queue in C#
Stack
Stack class represents a last-in, first out collection of object. It is used when you need a last-in, first-out access of items.
The following is the property of Stack class −
Count− Gets the number of elements in the stack.
The following are the methods of Stack class −
Sr.No. | Method & Description |
---|---|
1 | public virtual void Clear(); Removes all elements from the Stack. |
2 | public virtual bool Contains(object obj); Determines whether an element is in the Stack. |
3 | public virtual object Peek(); Returns the object at the top of the Stack without removing it. |
4 | public virtual object Pop(); Removes and returns the object at the top of the Stack. |
5 | public virtual void Push(object obj); Inserts an object at the top of the Stack. |
6 | public virtual object[] ToArray(); Copies the Stack to a new array. |
The following is an example showing how to work with Stack class and its Push() and Pop() method −
Example
using System; using System.Collections; namespace CollectionsApplication { class Program { static void Main(string[] args) { Stack st = new Stack(); st.Push('A'); st.Push('B'); st.Push('C'); st.Push('D'); Console.WriteLine("Current stack: "); foreach (char c in st) { Console.Write(c + " "); } Console.WriteLine(); st.Push('P'); st.Push('Q'); Console.WriteLine("The next poppable value in stack: {0}", st.Peek()); Console.WriteLine("Current stack: "); foreach (char c in st) { Console.Write(c + " "); } Console.WriteLine(); Console.WriteLine("Removing values...."); st.Pop(); st.Pop(); st.Pop(); Console.WriteLine("Current stack: "); foreach (char c in st) { Console.Write(c + " "); } } } }
Output
Current stack: D C B A The next poppable value in stack: Q Current stack: Q P D C B A Removing values.... Current stack: C B A
Queue
Queue collection class is a concept in C# that is included in the System.Collection namespace. The elements are stored in a QUEUE in FIFO. The first element added will be the first to go out like a queue of people outside a movie hall to buy tickets.
It has two methods −
- Enqueue() method to add values
- Dequeue() method to retrieve values
Enqueue
Add items in the queue.
Queue q = new Queue(); q.Enqueue(“Two”); q.Enqueue(“One”);
Dequeue
Return items from the queue.
Queue q = new Queue(); q.Enqueue(“Two”); q.Enqueue(“One”); // remove elements while (q.Count > 0) Console.WriteLine(q.Dequeue());
Advertisements