#csharp_for_beginners
در برنامهنویسی، ساختار دادهای پشته (Stack) یکی از رایجترین و کاربردیترین ساختارها برای مدیریت دادهها به شمار میرود. پشته بر اساس اصل LIFO (آخرین ورودی، اولین خروجی) عمل میکند. در چارچوب داتنت، کلاس Stack در فضای نام System.Collections برای این منظور طراحی شده است
معرفی کلاس Stack
کلاس Stack (نسخهٔ غیرجنریک) در فضای نام System.Collections قرار دارد و میتواند انواع مختلف دادهها (حتی null) را در خود نگه دارد. این کلاس با استفاده از نوع object، امکان ذخیرهٔ هر نوع دادهای را فراهم میکند
متدها و ویژگیهای اصلی
در این بخش مهمترین متدها و خواص کلاس Stack را بررسی میکنیم:
۱. Push(object obj)
افزودن یک عنصر به بالای پشته:
Stack stack = new Stack();
stack.Push("سلام");
stack.Push(123);
stack.Push(null);
۲. Pop()
حذف و بازگرداندن عنصر بالای پشته:
object top = stack.Pop(); // آخرین مقدار افزودهشده را برمیگرداند
۳. Peek()
فقط مشاهدهٔ عنصر بالای پشته بدون حذف آن:
object top = stack.Peek();
۴. Count
تعداد عناصر موجود در پشته:
int count = stack.Count;
۵. Clear()
پاکسازی کامل پشته:
stack.Clear();
۶. Contains(object obj)
بررسی وجود یک عنصر خاص:
bool hasHello = stack.Contains("سلام");
نمونهکد کامل:
Stack myStack = new Stack();
myStack.Push("Hello");
myStack.Push("World");
myStack.Push(null);
Console.WriteLine($"تعداد: {myStack.Count}");
while (myStack.Count > 0)
Console.WriteLine(myStack.Pop());
خروجی:
تعداد: 3
null
World
Hello
🔗 مطلب کامل را در این لینک میتوانید مطالعه کنید.
⁉️ برای بحث و تبادل نظر فنی در مورد این پست، نظرات خود را با ما در قسمت کامنتها به اشتراک بگذارید.
کانال تلگرام:
@SoftwarePhilosophy
______