دوره های آموزشی آکادمی پی وی لرن (پروژه محور و ویژه بازار کار)



  • ۲۵
  • مرداد

جلسه ۳۴ : معرفی Stack (پشته) در #C

  • دسته‌بندی‌ها :
جلسه ۳۴ : معرفی Stack (پشته) در #C
    • جزئیات
    • نوع محتواآموزش تصویری

      مقدمه :

      با عرض سلام و وقت بخیر خدمت کاربران سایت پی وی لرن ، با دوره کامل آموزش #C در خدمت شما دوستان هستیم . در قسمت قبلی در مورد مجموعه های SortedList در زبان #C صحبت کرده و متد ها و پراپرتی های آن را نام برده و توضیح دادیم. در این قسمت قصد داریم شما را با نوعی دیگر از مجموعه های غیر عمومی به نام پشته در #C شامل (متد Push ، متد Peek ، متد Contains ، متد Clear ) آشنا کنیم.

      این نوع از مجموعه ها عناصر را در سبک LIFO) Last In First Out) ذخیره می کنند. زبان #C شامل دو نوع پشته عمومی و غیر عمومی است.

      در اینجا، شما در مورد پشته غیر عمومی خواهید آموخت.

      میتوان در پشته از مقدار صفر و همچنین تکراری اسفاده کرد . در یک پشته متد Push برای اضافه کردن یک مقدار و متد Pop یا Peek برای بازیابی مقادیر استفاده می شوند.

      پشته

      پشته

       

      پراپرتی ها و متدهای مهم پشته :

      توضیحاتپراپرتی
      تعداد کل عناصر موجود در پشته را برمی گرداند.Count

       

      توضیحاتمتد
      اضافه کردن یک عنصر به بالای پشتهPush
      برگرداندن بالاترین عنصر پشتهPeek
      پاک کردن و برگرداندن (Cut) بالاترین عنصر پشتهPop
      چک کردن اینکه آیا عنصر مورد نظری در پشته موجود هست یا خیرContains
      پاک کردن تمام عناصر موجود در پشتهClear

       

      متد Push :

      متد Push مقادیر را به پشته اضافه می کند مقادیر میتواند از هر نوع داده ای باشند.

      مثال : 

       

      دسترسی یه مقادیر پشته :

      شما می توانید عناصر پشته را با روش های مختلف بازیابی کنید. میتوانید با استفاده از foreach تمام عناصر را به سبک LIFO دریافت کنید.

      مثال : 

      خروجی :

      مثال : 

       

      متد Peek :

      متد Peek آخرین مقدار (top-most) را از پشته باز می گرداند. اگر پشته خالی باشد خطای InvalidOperationException بازگشت داده می شود . بنابراین قبل از بازیابی عناصر با استفاده از متد Peek حتما پشته را بررسی کنید.

      مثال : 

      خروجی :

      مثال : 

       

      متد Pop :

      می توانید با استفاده از متد Pop مقادیر را بازیابی کنید ؛ متد Pop آخرین مقدار را برگردانده و سپس آن را پاک می کند.

      متد Pop در یک پشته خالی، خطای InvalidOperationException را برمی گرداند. بنابراین همیشه برای استفاده از متد Pop باید تعداد عناصر پشته بیش از ۰ باشد.

      شکل کلی :

      object Pop();

      مثال : 

      خروجی :

      مثال : 

       

      متد Contains :

      متد Contains بررسی می کند که آیا عنصر مشخص شده در مجموعه پشته وجود دارد یا نه. اگر وجود داشته باشد، true را برمی گرداند؛ در غير اينصورت، مقدار false را برمیگرداند.

      شکل کلی :

      bool Contains(object obj);

      مثال : 

       

      متد Clear :

      این متد تمام عناصر موجود در پشته را حذف می کند :

      شکل کلی :

      void Clear();

      مثال : 

      خروجی :

      مثال : 

      چند نکته مهم جهت به خاطر سپردن :

      1. پشته عناصر را به سبک LIFO (Last in First out) ذخیره می کند. عنصر که در آخرین اضافه می شود، اول از همه استفاده می شود.
      2. متد Push برای اضافه کردن عنصر جدید به پشت کاربرد دارد.
      3. متد Pop عناصر را از بالای پشته باز گردانده و سپس آن را از پشت حذف می کند
      4. فراخوانی متد Pop در پشته خالی، یک استثناء (Exception) را برمی گرداند.
      5.  متد Peek همیشه بالاترین عنصر در پشته را باز می گرداند ولی آن را پاک نمی کند.
      6. همانند متد Pop اگرمتد Peek در پشته خالی فراخوانی شود ، یک استثناء (Exception) را برمی گرداند.

       

      در این قسمت با نوعی دیگر از مجموعه های غیر عمومی در زبان #C آشنا شدید.

      در قسمت بعد به معرفی و تشریح صف (Queue) که از مجموعه های غیر عمومی (Non Generic) در زبان #C است می پردازیم.

       

      QR:  جلسه ۳۴ : معرفی Stack (پشته) در #C
      به اشتراک بگذارید


      دیدگاه کاربران
      1. تصویر کاربر
        • تصویر کاربر
      2. تصویر کاربر
      3. تصویر کاربر
        • تصویر کاربر