لطفا به نکات زیر در هنگام خرید دانلود پاورپوینت پشته Stack توجه فرمایید.

1-در این مطلب، متن اسلاید های اولیه دانلود پاورپوینت پشته Stack قرار داده شده است 2-به علت اینکه امکان درج تصاویر استفاده شده در پاورپوینت وجود ندارد،در صورتی که مایل به دریافت  تصاویری از ان قبل از خرید هستید، می توانید با پشتیبانی تماس حاصل فرمایید 3-پس از پرداخت هزینه ، حداکثر طی 12 ساعت پاورپوینت خرید شده ، به ادرس ایمیل شما ارسال خواهد شد 4-در صورت  مشاهده  بهم ریختگی احتمالی در متون زیر ،دلیل ان کپی کردن این مطالب از داخل اسلاید ها میباشد ودر فایل اصلی این پاورپوینت،به هیچ وجه بهم ریختگی وجود ندارد 5-در صورتی که اسلاید ها داری جدول و یا عکس باشند در متون زیر قرار نخواهند گرفت

اسلاید ۱ :

تعريف

lحالت خاصي از نوع داده عمومي ليستهاي مرتب شده

lLIFO ( Last in first out)

lساختمان داده نيست بلكه نحوه استفاده از يك ساختمان داده است.

lيك آرايه نقش پشته را بازي مي كند اگر :جايگذاري و حذف از يك سمت (top) انجام شود.

اسلاید ۲ :

lنوع متغيري كه در داخل استك نگهداري مي شود متفاوت است.

lبهتر نیست که یک بار یک لیست را طراحی کنیم و چندین بار از آن استفاده کنیم؟

lC++ این امکان را به ما می دهد.

lبرای این که بتوانیم از یک استك برای چند بار استفاده کنیم باید از کلاس های الگو(template) استفاده کنیم.

l

اسلاید ۳ :

(۱دستور template <class KeyType> را قبل از هر کلاس وهر تابعی که در آن از template استفاده می شود قرار داده می شود.

nبه جای  KeyType می توان هر اسم دیگر که در شرایط اسم در C++ صدق می کند استفاده کرد با این شرط که بعد از اسم گذاری فقط ازهمان اسم استفاده شود.

اسلاید ۴ :

(۲اگر در کلاسی از template استفاده شود تعریف توابع آن کلاس به شکل مقابل تبدیل می شوند.

template <class  KeyType>

retValType myClass< KeyType > :: Func(paramet list)

{

  declaration and statements

}

template <class KeyType >

void Stack< KeyType > :: Push(KeyType newElement)

{

  //declaration and statements

}

اسلاید ۵ :

(۳هر جا لازم است متغیری از نوع الگو استفاده شود از قوانین تعریف و استفاده از متغیر معمولی استفاده می کنیم. مثلا برای ارسال به تابع از روش زیر استفاده می کنیم.

retValType Function(KeyType value){}

 

اسلاید ۶ :

(۴برای ساختن شیئی از یک کلاس از نوع متغیری که میخواهیم از دستورالعمل زیر استفاده می کنیم:

myClass <valueType> myObject;

 مثال:

Stack <int> intStack;

که یک شی پشته با نوع اعداد صحیح ایجاد می کند.

نکته : پس از تعیین نوع شی نمی توان از نوع دیگر به شی فرستاد

–خطای زمان کامپایل، اجرا و يا از دست دادن اطلاعات

اسلاید ۷ :

template <class KeyType>

class Stack

{  //Object: A finite ordered list with zero or more elements

  public:

  Stack(int MaxStackSize=DefauktSize);

  Boolean IsFull();

  void Push (const KeyType &item);

  Boolean IsEmpty();

  KeyType* Pop();

 

}

اسلاید ۸ :

lاگر top=0 باشد شرط خالي و پر بودن پشته چيست؟ چه تغييراتي در ترتيب دستورات Push و Pop بايستي ايجاد شود؟

lبه سوال ۲ از تمرينات بخش ۳-۲ پاسخ دهيد؟

l

اسلاید ۹ :

lاگر rear=front=0 باشد شرط خالي و پر بودن صف چيست؟ چه تغييراتي در ترتيب دستورات Add و Delete بايستي ايجاد شود؟

l

lتعداد عناصر موجود در صف؟

lچگونه مي توان از صف در زمانبندي برنامه ها استفاده نمود ؟(مثال ۳-۲)

اسلاید ۱۰ :

lروشي براي جلوگيري از اتلاف حافظه.

l

انواع:

  1. شيفت دادن تمام عناصر
  2. شيفت در صورت نياز

  ۳٫صف حلقوي