پشته در سی شارپ چیست؟
پشته یا Stack در سی شارپ یک نوع خطی از ساختار داده است که قادر به ذخیره اشیاء است. پشته یک ساختار داده LIFO یا Last-In-First-Out است، به این معنی که آخرین موردی که در پشته قرار می گیرد اولین موردی است که از پشته خارج می شود.
نحوه ایجاد پشته در سی شارپ
برای استفاده از Stack در سی شارپ باید از فضای نام System.Collections.Generic استفاده کنیم.
using System.Collections.Generic;
بعد از افزودن فضای نام می توانیم پشته خود را مانند مثال زیر ایجاد کنیم:
Stack<int> myStack = new Stack<int>();
اکنون، متغیر Stack خود را از نوع داده «int» ایجاد کردهایم و نام آن را «myStack» گذاشتهایم. هنگامی که Stack خود را ایجاد میکنیم، باید نوع داده را مشخص کنیم. همانطور که در مثال بالا می بینیم، ما از نوع داده "int" استفاده کرده ایم. ما می توانیم از انواع داده های دیگر نیز استفاده کنیم، مانند انواع داده های رشته ای و boolean.
نحوه افزودن عناصر به پشته در سی شارپ
برای افزودن عناصر به پشته (Stack) در سی شارپ باید از تابع ()Push مانند مثال زیر استفاده کنیم:
Stack<int> myStack = new Stack<int>();
myStack.Push(1);
myStack.Push(2);
myStack.Push(3);
Console.WriteLine(String.Join(" ", myStack));
Output:
3 2 1
در مثال بالا، می بینیم که با استفاده از تابع ()Push چند عنصر را به Stack خود اضافه کرده ایم. با چاپ Stack و بررسی خروجی میتوانیم تأیید کنیم که آنها با موفقیت اضافه شدهاند.
نحوه دسترسی به بالاترین عنصر پشته در سی شارپ
برای بدست آوردن بالاترین عنصر پشته (Stack) در csharp باید از تابع ()Peek مانند مثال زیر استفاده کنیم:
Stack<int> myStack = new Stack<int>();
myStack.Push(1);
myStack.Push(2);
myStack.Push(3);
Console.WriteLine(myStack.Peek());
Output:
3
در مثال بالا، می بینیم که از تابع ()Peek برای بازیابی عنصر بالای Stack خود استفاده کرده ایم. میتوانیم با چاپ نتیجه و بررسی خروجی تأیید کنیم که مقدار را بازیابی کردهایم.
نحوه حذف بالاترین عنصر پشته در سی شارپ
برای حذف بالاترین عنصر صف (Stack) در csharp باید از تابع ()Pop استفاده کنیم. تابع ()Pop نیز بالاترین عنصر پشته را بر می گرداند. به مثال زیر توجه کنید:
Stack<int> myStack = new Stack<int>();
myStack.Push(1);
myStack.Push(2);
myStack.Push(3);
Console.WriteLine(myStack.Pop());
Console.WriteLine(String.Join(" ", myStack));
Output:
3
2 1
در مثال بالا، می بینیم که چند عنصر را به پشته خود اضافه کرده ایم. ما از تابع ()Pop برای برگرداندن و حذف عنصر بالای Stack استفاده کردیم. ما می توانیم با چاپ نتیجه و بررسی خروجی بررسی کنیم که تابع ()Pop عنصر بالایی را برمی گرداند. همچنین میتوانیم تأیید کنیم که تابع ()Pop، بالاترین عنصر را با موفقیت حذف کرده است.
نحوه پاک کردن پشته در سی شارپ
برای پاک کردن کامل پشته در سی شارپ باید از تابع ()Clear مانند مثال زیر استفاده کنیم:
Stack<int> myStack = new Stack<int>();
myStack.Push(1);
myStack.Push(2);
myStack.Push(3);
myStack.Clear();
Console.WriteLine(String.Join(" ", myStack));
Output:
در مثال بالا، ما چند عنصر را به پشته خود اضافه کرده ایم. سپس از تابع ()Clear در Stack خود استفاده کردیم. با چاپ Stack و بررسی خروجی میتوانیم تأیید کنیم که همه عناصر حذف شدهاند. خروجی ما باید خالی باشد زیرا همه چیز را حذف کردیم.
بررسی عناصر در یک پشته در سی شارپ
برای بررسی اینکه آیا یک عنصر در یک پشته وجود دارد یا خیر باید از تابع ()Contains مانند مثال زیر استفاده کنیم:
Stack<int> myStack = new Stack<int>();
myStack.Push(1);
myStack.Push(2);
myStack.Push(3);
Console.WriteLine(myStack.Contains(2));
Console.WriteLine(myStack.Contains(4));
Output:
True
False
در مثال بالا، می بینیم که ما چند عدد را به پشته خود اضافه کردیم. سپس نتایج تابع ()Contains را چاپ کردیم. در این مثال بررسی کرده ایم که آیا صف ما حاوی مقدار «2» و مقدار «4» است یا خیر. همانطور که در خروجی می بینیم، صف ما حاوی مقدار «2» است، اما حاوی مقدار «4» نیست.
بررسی اندازه یک پشته در سی شارپ
برای بررسی تعداد عناصر موجود در پشته باید از تابع ()Count مانند مثال زیر استفاده کنیم:
Stack<int> myStack = new Stack<int>();
myStack.Push(1);
myStack.Push(2);
myStack.Push(3);
Console.WriteLine(myStack.Count);
Output:
3
در مثال بالا، می بینیم که ما چند عدد را به پشته خود اضافه کردیم. سپس نتیجه تابع ()Count را چاپ کردیم. همانطور که در خروجی می بینیم، پشته ما شامل 3 عنصر است.
نتیجه گیری
ما در این مقاله به بررسی پشته (Stack) در سی شارپ پرداختیم و برخی از توابع صف از جمله نحوه ایجاد،افزودن و حذف عنصر،به دست آوردن بالاترین عنصر پشته،پاک کردن پشته و بدست آوردن اندازه پشته را بررسی کردیم.
برای ثبت نظر باید در سایت ثبت نام یا ورود نمایید