صفحه محصول - پاورپوینت آشنایی با Queues

پاورپوینت آشنایی با Queues (pptx) 34 اسلاید


دسته بندی : پاورپوینت

نوع فایل : PowerPoint (.pptx) ( قابل ویرایش و آماده پرینت )

تعداد اسلاید: 34 اسلاید

قسمتی از متن PowerPoint (.pptx) :

Queues Queue Definition ليست مرتب با خواص زير: تمام الحاقها در يک طرف انجام مي گردند. (tail) تمام حذفها در طرف ديگر انجام مي شوند. (head) صف: Q = (a0, a1, …, an-1) a0 عنصر ابتداي ليست وan-1 عنصر انتهاي ليست است. براي تمام 1 <= i < n ،ai پشت سر ai-1 قرار دارد Queue Definition بخاطر خواص الحاق و حذف، صف خيلي شبيه: صف نانوايي ماشينها در ترافيک بسته هاي داده در مسيريابها ... است. از صف همچنين به عنوانfirst-in first out ياد مي شود. Queue Implementation Ideas پياده سازي صف: آرايه اي يا ليست پيوندي؟ کدام بهتر است؟ اشاره گر ابتدا مکان اولين عنصر صف اشاره گر انتها مکان آخرين عنصر صف Array-Based Queue Definition template class Queue { public: Queue(int MaxSize = DefaultSize); ~Queue(); bool IsFull(); bool IsEmpty(); void Add(const KeyType& item); KeyType* Delete(KeyType& item); private: void QueueFull(); // error handling void QueueEmpty(); // error handling int head, tail; KeyType* queue; int MaxSize; }; Queue Implementation جزء سازنده: template Queue::Queue(int MaxQueueSize): MaxSize(MaxQueueSize) { queue = new KeyType[MaxSize]; head = tail = -1; } Queue Implementation جزء مخرب: template Queue::~Queue() { delete [] queue; head = tail = -1; } Queue Implementation IsFull() و IsEmpty() : template bool Queue::IsFull() { return (tail == (MaxSize-1)); } template bool Queue::IsEmpty() { return (head == tail); } Queue Implementation Add() و Delete() : template void Queue::Add (const KeyType& item) { if (IsFull()) {QueueFull(); return;} else { tail = tail + 1; queue[tail] = item; } } template KeyType* Queue::Delete(KeyType& item) { if (IsEmpty()) {QueueEmpty(); return 0}; else { head = head + 1; item = queue[head]; return &item; } }

فایل های دیگر این دسته

مجوزها،گواهینامه ها و بانکهای همکار

پروژه های دانشجویی و مقالات علمی دارای نماد اعتماد الکترونیک از وزارت صنعت و همچنین دارای قرارداد پرداختهای اینترنتی با شرکتهای بزرگ به پرداخت ملت و زرین پال و آقای پرداخت میباشد که در زیـر میـتوانید مجـوزها را مشاهده کنید