زمان کنونی: ۳۱ خرداد ۱۴۰۳, ۰۴:۵۴ ب.ظ مهمان گرامی به انجمن مانشت خوش آمدید. برای استفاده از تمامی امکانات انجمن می‌توانید عضو شوید.
گزینه‌های شما (ورودثبت نام)

گرفتن ماکسیمم و مینیمم و میانگین در صف یا پشته پیوندی

ارسال:
۲۳ اسفند ۱۳۹۱, ۰۷:۳۷ ب.ظ (آخرین ویرایش در این ارسال: ۲۳ اسفند ۱۳۹۱ ۰۸:۱۴ ب.ظ، توسط irpersian20.)
گرفتن ماکسیمم و مینیمم و میانگین در صف یا پشته پیوندی
سلام
برای گرفتن مینیمم در صف یا پشته پیوندی چه راهکاری دارید؟
چون ما وقتی یک داده ای رو از صف بر می گردونیم. . اشاره گر که مثلا first باشه از اول یکی میاد جلوتر و نود قبلی حذف میشه به کل.
اگر به این طریق مینیمم بگیریم کل صف خالی میشه.
راه حل شما چیست؟ چه ایده ای دارید؟

که مینبمم و ماکسیمم بگیریم و صف پابرجا باشد. واضح تر بگم:
۵
۹
۱۴
۳
۱۹
درون صف هستند. (صف پیوندی) . حالا میبنمم رو بدست بیارم. بعد مقدار رو برگردونم و این نود رو حذف کنم و صف بشه
۵
۹
۱۴
۱۹

الان صف رو پیاده کردن و عنصر توش درج و حذف میکنم و مشکلی نداره. نیاز به تکمیلش هست. زبان سی شارپ
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
ارسال:
۲۳ اسفند ۱۳۹۱, ۱۰:۵۶ ب.ظ (آخرین ویرایش در این ارسال: ۲۴ اسفند ۱۳۹۱ ۰۲:۲۸ ب.ظ، توسط mfXpert.)
گرفتن ماکسیمم و مینیمم و میانگین در صف یا پشته پیوندی
ویرایش: به دلیل بی دقتی در خوندن پست اول، کلاً جواب غلطی داده بودم. در نتیجه جواب خودم رو حذف کردم.

One who is raised by sword can't be beaten. One who is toughened by fire can't be burned
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
 سپاس‌گزاری شده توسط: irpersian20
ارسال:
۲۴ اسفند ۱۳۹۱, ۱۲:۲۰ ق.ظ (آخرین ویرایش در این ارسال: ۲۴ اسفند ۱۳۹۱ ۱۲:۲۲ ق.ظ، توسط mahdiii.)
گرفتن ماکسیمم و مینیمم و میانگین در صف یا پشته پیوندی
یه راهش اینه کل صفو پیمایش کنی یعنی از اول حذف کنی و به آخر اضافه کنی(درج) و مینیمم رو پیدا کنی و با یه پیمایش دیگه اون عنصرو حذف کنی. اگه مینیمم رو در یه متغیر ذخیره کرده باشی فقط یه پیمایش می خواد. یعنی یکی یکی از اول صف حذف می کنی و اگه مینیمم نبود به آخر صف اضافه می کنی. اگه مینیمم بود که دیگه اونو درج نمی کنی. این کارو هم به تعداد داده هات در صف انجام میدی. این طوری صفت به هم نمی خوره. شاید راه ساده تری هم باشه.

یافتن (دسترسی به ) مینیمم و ماکسیمم در صف مرتبش on هست
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
 سپاس‌گزاری شده توسط: irpersian20
ارسال:
۲۴ اسفند ۱۳۹۱, ۰۱:۳۱ ق.ظ (آخرین ویرایش در این ارسال: ۲۴ اسفند ۱۳۹۱ ۰۱:۴۳ ق.ظ، توسط irpersian20.)
گرفتن ماکسیمم و مینیمم و میانگین در صف یا پشته پیوندی
سلام
بله حق با شماست. در مورد ماکسیمم و مینیمم چی کار کنم؟
به نظرتون به صرفه تر نیست . بعد از اضافه کردن مقادیر به نود ها همه رو همون موقع بریزم تو یک آرایه.
از اون ور واسه حذف کردن عنصر در آرایه باز هم مکافاتش فکر نکنم کمتر از صف پیوندی بشه.

ایده کم هزینه تر و بهتر نیست؟

(۲۴ اسفند ۱۳۹۱ ۱۲:۲۰ ق.ظ)mahdiii نوشته شده توسط:  یه راهش اینه کل صفو پیمایش کنی یعنی از اول حذف کنی و به آخر اضافه کنی(درج) و مینیمم رو پیدا کنی و با یه پیمایش دیگه اون عنصرو حذف کنی. اگه مینیمم رو در یه متغیر ذخیره کرده باشی فقط یه پیمایش می خواد. یعنی یکی یکی از اول صف حذف می کنی و اگه مینیمم نبود به آخر صف اضافه می کنی. اگه مینیمم بود که دیگه اونو درج نمی کنی. این کارو هم به تعداد داده هات در صف انجام میدی. این طوری صفت به هم نمی خوره. شاید راه ساده تری هم باشه.

یافتن (دسترسی به ) مینیمم و ماکسیمم در صف مرتبش on هست

سلام
یک بار کل صف رو میرم جلو و به فرض ۶ نود داریم و مینیمم در نود ۴ هست. و پیداش کردیم.و ریخیتم در متغیر min
حالا یک اشاره گر اول صف داریم یک اشاره گر اخر صف
چطور حذف کنمش؟ مثل آرایه نیست که بگم عنصر ۴ رو تغیر بده.
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
ارسال:
۲۴ اسفند ۱۳۹۱, ۰۲:۳۲ ق.ظ
RE: گرفتن ماکسیمم و مینیمم و میانگین در صف یا پشته پیوندی
(۲۴ اسفند ۱۳۹۱ ۰۱:۳۱ ق.ظ)irpersian20 نوشته شده توسط:  سلام
بله حق با شماست. در مورد ماکسیمم و مینیمم چی کار کنم؟
به نظرتون به صرفه تر نیست . بعد از اضافه کردن مقادیر به نود ها همه رو همون موقع بریزم تو یک آرایه.
از اون ور واسه حذف کردن عنصر در آرایه باز هم مکافاتش فکر نکنم کمتر از صف پیوندی بشه.

ایده کم هزینه تر و بهتر نیست؟

(۲۴ اسفند ۱۳۹۱ ۱۲:۲۰ ق.ظ)mahdiii نوشته شده توسط:  یه راهش اینه کل صفو پیمایش کنی یعنی از اول حذف کنی و به آخر اضافه کنی(درج) و مینیمم رو پیدا کنی و با یه پیمایش دیگه اون عنصرو حذف کنی. اگه مینیمم رو در یه متغیر ذخیره کرده باشی فقط یه پیمایش می خواد. یعنی یکی یکی از اول صف حذف می کنی و اگه مینیمم نبود به آخر صف اضافه می کنی. اگه مینیمم بود که دیگه اونو درج نمی کنی. این کارو هم به تعداد داده هات در صف انجام میدی. این طوری صفت به هم نمی خوره. شاید راه ساده تری هم باشه.

یافتن (دسترسی به ) مینیمم و ماکسیمم در صف مرتبش on هست

سلام
یک بار کل صف رو میرم جلو و به فرض ۶ نود داریم و مینیمم در نود ۴ هست. و پیداش کردیم.و ریخیتم در متغیر min
حالا یک اشاره گر اول صف داریم یک اشاره گر اخر صف
چطور حذف کنمش؟ مثل آرایه نیست که بگم عنصر ۴ رو تغیر بده.
من که توضیح دادم باید یکی یکی حذف کنی و به آخر اضافه کنی
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
 سپاس‌گزاری شده توسط: irpersian20
ارسال:
۲۴ اسفند ۱۳۹۱, ۱۱:۱۸ ق.ظ
RE: گرفتن ماکسیمم و مینیمم و میانگین در صف یا پشته پیوندی
(۲۴ اسفند ۱۳۹۱ ۰۲:۳۲ ق.ظ)mahdiii نوشته شده توسط:  
(24 اسفند ۱۳۹۱ ۰۱:۳۱ ق.ظ)irpersian20 نوشته شده توسط:  سلام
بله حق با شماست. در مورد ماکسیمم و مینیمم چی کار کنم؟
به نظرتون به صرفه تر نیست . بعد از اضافه کردن مقادیر به نود ها همه رو همون موقع بریزم تو یک آرایه.
از اون ور واسه حذف کردن عنصر در آرایه باز هم مکافاتش فکر نکنم کمتر از صف پیوندی بشه.

ایده کم هزینه تر و بهتر نیست؟

(۲۴ اسفند ۱۳۹۱ ۱۲:۲۰ ق.ظ)mahdiii نوشته شده توسط:  یه راهش اینه کل صفو پیمایش کنی یعنی از اول حذف کنی و به آخر اضافه کنی(درج) و مینیمم رو پیدا کنی و با یه پیمایش دیگه اون عنصرو حذف کنی. اگه مینیمم رو در یه متغیر ذخیره کرده باشی فقط یه پیمایش می خواد. یعنی یکی یکی از اول صف حذف می کنی و اگه مینیمم نبود به آخر صف اضافه می کنی. اگه مینیمم بود که دیگه اونو درج نمی کنی. این کارو هم به تعداد داده هات در صف انجام میدی. این طوری صفت به هم نمی خوره. شاید راه ساده تری هم باشه.

یافتن (دسترسی به ) مینیمم و ماکسیمم در صف مرتبش on هست

سلام
یک بار کل صف رو میرم جلو و به فرض ۶ نود داریم و مینیمم در نود ۴ هست. و پیداش کردیم.و ریخیتم در متغیر min
حالا یک اشاره گر اول صف داریم یک اشاره گر اخر صف
چطور حذف کنمش؟ مثل آرایه نیست که بگم عنصر ۴ رو تغیر بده.
من که توضیح دادم باید یکی یکی حذف کنی و به آخر اضافه کنی
درست می فرمائید
یک دور میریم جلو و کمترین عنصر پیدا میکنیم
حالا ۲ تا اشاره گر داریم اول و آخر صف . و هیچ عنصری هم حذف نشده و صف هم ترتیب سابق رو داره و فقط مینیمم پیدا شده
در صف ۶ نودی . نود ۴ مینیمم هست. دوره از اول یک بار دیگه بریم جلو و دنبال نود ۴ بگیرم و حذفش کنیم؟
۲ سری پیمایش میشه درسته؟
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
ارسال:
۲۴ اسفند ۱۳۹۱, ۰۱:۵۵ ب.ظ
گرفتن ماکسیمم و مینیمم و میانگین در صف یا پشته پیوندی
آره. اما اگه مینیمم رو داشته باشی(هنگام درج و حذف به روزش کنی) یه پیمایش کافیه(فقط برای حذف)
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
ارسال:
۲۵ اسفند ۱۳۹۱, ۰۱:۱۸ ب.ظ
گرفتن ماکسیمم و مینیمم و میانگین در صف یا پشته پیوندی
سلام
من کلا برای پیاده سازی واقعی (نه شبیه سازی فقط) الگوریتم های زمانبندی مثل sjf و rr دارم . از صف پیوندی کلا استفاده میکنم.همش از صف پیوندی.
من مثالی ندیدم ببینم بقیه چطور کار کردند.
نظر شما چیه؟ ایا ساختمان داده مناسبی هست یا هزنیه زیادی داره ؟ کار با آرایه برای این حذف و درج ها گرفتن مینیمم و ماکسیمم ها کارم سخت تر نیست؟
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
ارسال:
۲۵ اسفند ۱۳۹۱, ۰۳:۳۰ ب.ظ (آخرین ویرایش در این ارسال: ۲۵ اسفند ۱۳۹۱ ۰۳:۳۳ ب.ظ، توسط mahdiii.)
گرفتن ماکسیمم و مینیمم و میانگین در صف یا پشته پیوندی
کلا برای پیاده سازی صف دو راه وجود داره با آرایه و با لیست پیوندی. آرایه تعداد عناصرش ثابته و نمی تونه برای حالتهای کلی و عمومی مناسب باشه اما در عوض با لیست پیوندی می تونید هر تعداد عناصر که می خواهید اضافه کنید. اگر به زبان c++ آشنا هستید، خود صف، پشته، صف دوطرفه و خیلی از این مواردو پیاده سازی کرده و شما می تونید با تعریف یک شی از نوع صف، به راحتی از توابعش استفاده کنید. (حذف و درج) یه سرچ بزنید خیلی راحت مطلب پیدا می کنید.
queue in c++
فقط یه چیزی من از مطلب شما اینو فهمیدم که شما می خواهید کوچکترین عنصر رو هر دفعه حذف کنید(در زمان حذف) اگر این طوره که باید از صف اولویت استفاده کنید که در کتابهای ساختمان داده هم بهش اشاره شده. بدین صورت که صف اولویت مثل صف عادیست تنها هنگام حذف، کوچکترین عنصر(بالاترین اولویت ) رو حذف می کنه که بهترین پیاده سازیش با هیپ هست که log ای هست اما اگه از راههای معمول می خواهید استفاده کنید همون on هست.
در ضمن در سی شارپ هم خود ساختار صف پیاده سازی شده.

من شما رو به این لینک ارجاع میدم. امیدوارم مفید باشه. من کلمه priority queue in c# رو جستجو کردم

مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمی‌باشید. جهت مشاهده پیوندها ثبت نام کنید.
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
 سپاس‌گزاری شده توسط: irpersian20


موضوع‌های مرتبط با این موضوع...
موضوع: نویسنده پاسخ: بازدید: آخرین ارسال
  آموزش نحوه گرفتن پرتره ای حرفه ای mortazangz ۰ ۱,۳۴۴ ۲۵ بهمن ۱۴۰۰ ۰۲:۱۹ ب.ظ
آخرین ارسال: mortazangz
  استفاده از پشته armiii ۰ ۱,۰۰۰ ۰۳ دى ۱۴۰۰ ۱۲:۴۳ ق.ظ
آخرین ارسال: armiii
Question لیست پیوندی porseshgar ۰ ۱,۴۸۷ ۲۸ بهمن ۱۳۹۷ ۰۳:۵۱ ب.ظ
آخرین ارسال: porseshgar
  درخواست دراهنمایی برای گرفتن خوابگاه خودگردان یا خونه تهران matinpf ۶ ۶,۴۸۷ ۱۳ شهریور ۱۳۹۷ ۰۴:۱۵ ب.ظ
آخرین ارسال: Happiness.72
  حداقل اندازه پشته Mr.R3ZA ۰ ۱,۵۵۲ ۱۰ تیر ۱۳۹۷ ۰۲:۳۰ ق.ظ
آخرین ارسال: Mr.R3ZA
  موارد صف پشته و لیست پیوندی و.. در برنامه نویسی هم کاربرد داره؟ R.g- ۳ ۲,۷۴۳ ۰۵ شهریور ۱۳۹۶ ۰۱:۲۳ ق.ظ
آخرین ارسال: R.g-
  درخواست حل تست - میانگین ۴۴۰۰۰۰ ۳ ۲,۵۲۷ ۲۶ مرداد ۱۳۹۶ ۰۹:۲۱ ب.ظ
آخرین ارسال: Jooybari
  میانگین زمان پاسخ . سیستم اشتراک زمانی. wskf ۱ ۳,۲۲۲ ۱۸ فروردین ۱۳۹۶ ۰۲:۵۳ ق.ظ
آخرین ارسال: msour44
  روش های بهبود زمان و فضا در مرتب سازی سریع از طریق کاستن عمق پشته بازگشت shamim1395 ۱ ۱,۸۱۸ ۰۳ بهمن ۱۳۹۵ ۰۲:۲۱ ب.ظ
آخرین ارسال: Saman
  مشکل در انتگرال گرفتن H-Arshad ۳ ۳,۳۹۳ ۰۱ آذر ۱۳۹۵ ۱۱:۳۹ ق.ظ
آخرین ارسال: signal_micro

پرش به انجمن:

Can I see some ID?

به خاطر سپاری رمز Cancel

Feeling left out?


نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. رمزت رو فراموش کردی؟ اینجا به یادت میاریم! close

رمزت رو فراموش کردی؟

Feeling left out?


نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. close