C#-এ Stack ক্লাস Push এবং Pop অপারেশন ব্যবহার করে ইমপ্লিমেন্ট করা হয়। স্ট্যাক লাস্ট-ইন, ফার্স্ট-আউট (LIFO) কালেকশন উপস্থাপন করে। Stack ক্লাসের الرئيسية মেথডগুলো নিচে দেওয়া হলো:
| ক্রম নং | মেথড ও বর্ণনা |
|---|---|
| 1 | public virtual void Clear(); স্ট্যাক থেকে সব এলিমেন্ট সরায়। |
| 2 | public virtual bool Contains(object obj); নির্দিষ্ট এলিমেন্ট স্ট্যাকে আছে কিনা যাচাই করে। |
| 3 | public virtual object Peek(); স্ট্যাকের উপরের অবজেক্ট রিটার্ন করে কিন্তু সরায় না। |
| 4 | public virtual object Pop(); স্ট্যাকের উপরের অবজেক্ট সরিয়ে রিটার্ন করে। |
| 5 | public virtual void Push(object obj); স্ট্যাকের উপরে একটি অবজেক্ট যোগ করে। |
| 6 | public virtual object[] ToArray(); স্ট্যাককে একটি নতুন অ্যারেতে কপি করে। |
Push অপারেশন এলিমেন্ট যোগ করে।
Stack st = new Stack();
st.Push('A');
st.Push('B');
st.Push('C');
st.Push('D');
Pop অপারেশন স্ট্যাক থেকে এলিমেন্ট সরায়।
st.Push('P');
st.Push('Q');
নিচে Stack ক্লাস এবং এর Push() ও Pop() মেথড ব্যবহারের উদাহরণ দেওয়া হলো।
উদাহরণ
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 + " ");
}
}
}
}
আউটপুট
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