تفاوت 3 کلاس queue و priority_queue وdequeue در c++ - هفت خط کد انجمن پرسش و پاسخ برنامه نویسی

تفاوت 3 کلاس queue و priority_queue وdequeue در c++

0 امتیاز
سلام. اصولاً الگوریتم های مختلفی برای پیاده سازی وجود دارند مثلاً همین هایی که در عنوان سوال نام بردم مثل  queue  و priority_queue   وdequeue  .چه تفاوت های اساسی بین این کلاس ها وجود داره؟
سوال شده اردیبهشت 30, 1399  بوسیله ی AliStar (امتیاز 164)   2 20 32

1 پاسخ

+2 امتیاز
 
بهترین پاسخ
queue صف یک طرفه هست یا به عبارتی یجور لینکدلیست که عناصر رو میشه به اخرش اضافه کرد یا حذف کرد

dequeue صف دوطرفه هست که هم میشه از اخر و هم از اولش این کار رو کرد

تفاوت این دوتا درمصرف حافظشون هست چون dequeue به ازار هر عنصر دو تا پوینتر نیاز داره ولی queue  یکی ولی درعوض عملیات های بیشتری رو میتونین باهاش انجام بدین

priority_queue یا صف اولویت مقدار ماکزیمم شروع صف قرار میگیره و معمولا با هیپ پیاده سازی میشه که خب نسبت به دوتا مورد بالا بعضی عملیات ها مثل اضافه کردن عنصر order بالاتری دارن و کند تر هستن ولی اگه نیاز دارین مقادیر رو سورت شده استفاده کنین گزینه خوبی میتونه باشه

استفاده از این 3 تا کاملا بستگی به پترن استفاده از دیتاتون داره
پاسخ داده شده اردیبهشت 30, 1399 بوسیله ی BlueBlade (امتیاز 15,315)   15 18 89
انتخاب شد اردیبهشت 30, 1399 بوسیله ی AliStar
...