پاورپوینت صف وپشته (pptx) 50 اسلاید
دسته بندی : پاورپوینت
نوع فایل : PowerPoint (.pptx) ( قابل ویرایش و آماده پرینت )
تعداد اسلاید: 50 اسلاید
قسمتی از متن PowerPoint (.pptx) :
بنام خدا
1
2
فصل سوم : صف وپشته
آشنايي با پشته
آشنايي با صف
ارزشيابي عبارات
اهداف
3
فصل سوم : پشته و صف
پشته و صف ، حالات خاصي از نوع داده عمومي يعني ليست هاي مرتب شده ، مي باشند.
پشته يک ليست مرتب شده اي است که جايگذاري و حذف از يک سمت آن که top (بالا) ناميده مي شود ، صورت مي گيرد.
پشته
4
پشته
محدوديت کار با پشته ما را ملزم مي کند که اگر عناصر A،B،C،D،E را به ترتيب به پشته اضافه کنيم ، E اولين عنصري خواهد بود که که از پشته حذف مي گردد.
از آنجا که آخرين عنصر وارده به پشته ، اولين عنصر حذف شده از آن ميباشد ، پشته را به عنوان يک ليست LIFO (آخرين ورودي ، اولین خروجي ) مي شناسيم.
5
پشته
← top
← top
← top
← top
← top
←top
حذف و جايگذاري عناصر در يک پشته
6
پياده سازي پشته
راحت ترين روش پياده سازي اين ADT ، استفاده از يک آرايه يک بعدي به نام items[MAX_STACK_SIZE] است که [MAX_STACK_SIZE] حداکثر تعداد عناصر آرايه ميباشد.
اولين يا پايين ترين عنصر پشته در items[0] ذخيره، دومي در items[1] و i امين عنصر در items[i-1] ذخيره مي گردد.
همراه با آرايه ، يک متغير به نام top وجود دارد که به عنصر بالايي پشته اشاره مي کند.
در ابتدا به top مقدار 1- داده مي شود که نشان دهنده يک پشته خالي است.
7
#define MAX_STACK_SIZE 100
template
class stack
{
public:
stack();
void push(const Type&);
Type* pop(Type&);
int IsEmpty();
int IsFull();
private:
int m_Top;
Type items[MAX_STACK_SIZE];
};
پياده سازي پشته
8
template
stack::stack()
{ m_Top = -1; }
void stack::push(const Type& x)
{ items[ ++m_Top ] = x; }
Type* stack::pop(Type& x)
{
if(IsEmpty()) return NULL;
x = items[ m_Top-- ];
return &x;
}
int stack::IsEmpty()
{ return (m_Top == -1); }
int stack::IsFull()
{ return (m_Top == MAX_STACK_SIZE -1) ; }
پياده سازي پشته
9
صف (Queue)
صف يک ليست است که تمامي جايگذاري آن از يک سمت و تمام حذف هاي ان از سمت ديگر انجام مي شود.
صف