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

تفاوت پریم و دایجکسترا

ارسال:
  

آلبالو پرسیده:

تفاوت پریم و دایجکسترا

با سلام.
میتونین یه گراف مثال بزنین که اعمال این دو الگوریتم روی اون جواب مشترکی نداشته باشه؟؟
روش هر دو الگوریتم بسیار شبیه هستند و من فرقشونو متوجه نمیشم.Huh
نقل قول این ارسال در یک پاسخ

۱
ارسال:
  

kijativa پاسخ داده:

RE: تفاوت پریم و دایجکسترا

سلام دوست من
این دوتا اصن بهم ربطی ندارن که،پریم یه روش پیدا کردن درخت پوشای کمینس(درختی که پوشا باشه و مجموع کل یالاش کمینه باشه) ولی دایجسترا یه راسو انتخاب میکنی بعد کوتاهترین مسیرا از این به سایر روسو بدس میاری
موفق باشید
مشاهده‌ی وب‌سایت کاربر
نقل قول این ارسال در یک پاسخ

۱
ارسال:
  

golabijat پاسخ داده:

RE: تفاوت پریم و دایجکسترا

(۲۲ آذر ۱۳۹۱ ۰۶:۵۲ ب.ظ)آلبالو نوشته شده توسط:  با سلام.
میتونین یه گراف مثال بزنین که اعمال این دو الگوریتم روی اون جواب مشترکی نداشته باشه؟؟
روش هر دو الگوریتم بسیار شبیه هستند و من فرقشونو متوجه نمیشم.Huh
سلام دوست عزیز
این دو الگوریتم از یه لحاظایی شبیه همن مثلا هر دو از یک نود شروع میکنن و پیش میرن
و یا مثلا هر دو از نظر مرتبه زمانی مثل همن n^2 , هر دو را می توان با هرم پیاده سازی
کرد در [tex]\Theta (e log n)[/tex] پیاده سازی کرد .
مشاهده‌ی وب‌سایت کاربر
نقل قول این ارسال در یک پاسخ

۱
ارسال:
  

maryam.raz پاسخ داده:

RE: تفاوت پریم و دایجکسترا

سلام
من هم به نوبه خودم یه توضیحی بدمShy
اول اینکه CLRS راجع به این شباهتشون اینجوری میگه
هر دو الگوریتم در هر مرحله از صف مینیمم اولویت(صف وزن ها)برای یافتن سبکترین راس استفاده می کنند واین راس به مجموعه اضافه میشه (مجموعه s در الگوریتم دیکسترا ، ودرخت درحال رشد در پریم)
پس درکل شباهتشون اینه که سعی دارن مسیر کوتاهی بوجود بیارن و در نهایت هم جفتشون به درخت ختم میشن
به نظر من تفاوت اصلیشون در جواب الگوریتم اونهاست
ما در دیکسترا در هر مرحله تمام مسیرها از گره اصلی به باقی گره ها(که مجاور هستن) را نگه میداریم و در هر مرحله این مسیرها را آپدیت میکنیم و در نهایت یک آرایه Nعضوی داریم که مثلا خونه ۳آرایه ،کوتاهترین مسیر به گره ۳ رو نشون میده
اما در پریم ما در هر مرحله تنها یک مسیر را نگه داری میکنیم و در نهایت هم یک هزینه بدست میاریم مثل اینکه یه آرایه با یک خونه داریم!!
تا اونجایی که من دیدم دیکسترا فقط روی گرافهای جهت دار اجرا میشه!
واینکه چرا درختشون یکی میشه چون اگه گراف دیکسترا رو بدون جهت بگیریم اون مجموعه S دیکسترا و مجموعه Bپریم یکی خواهند بود!!(B,Sکتاب پوران)
نمیدونم منطورمو رسوندم یا بیشتر گیج شدی!!Big Grin
اما توصیه بنده اینه که به شباهتشون توجه نکن چون گیج کننده استSmile
نقل قول این ارسال در یک پاسخ

ارسال:
  

masume_ml پاسخ داده:

RE: تفاوت پریم و دایجکسترا

[quote='maryam.raz' pid='148632' dateline='1355331739']

پس درکل شباهتشون اینه که سعی دارن مسیر کوتاهی بوجود بیارن و در نهایت هم جفتشون به یک درخت ختم میشن

سلام در نهایت جفتشون به یه درخت ممکنه ختم نشن مثال نقض براش زیاد هست !
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ

۱
ارسال:
  

mp1368 پاسخ داده:

RE: تفاوت پریم و دایجکسترا

سلام . با تشکر از توضیح Javadem

می خواستم توضیح ساده ای که کورمن توی سی دی تمریناتش به زبان جاوا واسه ی تفاوت این دو گفته بود رو بنویسم ولی دیدم اگه با یه مثال تفاوت رو بگیم خیلی تاثیر گذارتره و تمام ابهامات رو برطرف میکنه .

ببینید اگه گراف زیر داشته باشیم




میدونیم که با روش پریم زیر درخت پوشا به صورت زیر خواهد بود




حالا اگه بخوایم کم هزینه ترین مسیر بین گره A و D از گراف اصلی رو انتخاب کنیم میتونیم به راحتی با استفاده از الگوریتم دایجسترا مسیری با هزینه ی ۴ پیدا کنیم(یال A-D). اما اگه بخوایم این مسیر رو از روی درخت پوشای پریم پیدا کنیم هزینه اون برابر با ۶ هست که بهینه نیست.

خلاصه ی کلام : با دایجسترا شما میتونید به راحتی با حداقل ترین هزینه از گره ی آغازین به تمام گره ها برید درحالی که در پریم همیشه به این صورت نیست.
نقل قول این ارسال در یک پاسخ

۰
ارسال:
  

javadem پاسخ داده:

RE: تفاوت پریم و دایجکسترا

(۲۲ آذر ۱۳۹۱ ۰۶:۵۲ ب.ظ)آلبالو نوشته شده توسط:  با سلام.
میتونین یه گراف مثال بزنین که اعمال این دو الگوریتم روی اون جواب مشترکی نداشته باشه؟؟
روش هر دو الگوریتم بسیار شبیه هستند و من فرقشونو متوجه نمیشم.Huh

ببینید دایجسترا دنبال اینه که کوتاهترین مسیر ها از یک گره به سایر گره ها رو حساب کنه که به وضوح مشخصه که ممکنه درخت پوشای حاصل بهینه نباشه. اما پریم فقط دنبال درخت پوشای بهینه است . روش کارشون هم یه خرده متفاوته چون پریم اول از یه یال شروع میکنه و بعد یه مجموعه گره تشکیل میده و بعد کوچکترین یالی که با این مجموعه در ارتباطه و ایجاد حلقه نمیکنه رو انتخاب میکنه! اما دایجسترا اول از یه درخت شروع(کوچکترین یالها بین راس مورد نظر و راس های همسایه که البته بازم واضحه که ممکنه درخت اولیه پوشا نباشه یا حتی فقط با یک راس همسایه باشه! )میکنه و بعد یکی یکی یالها رو اصلاح میکنه!
نقل قول این ارسال در یک پاسخ



موضوع‌های مرتبط با این موضوع...
موضوع: نویسنده پاسخ: بازدید: آخرین ارسال
  تفاوت آنالیز عددی و محاسبات عددی fotobetpsy ۰ ۱۲۹ ۲۴ شهریور ۱۴۰۳ ۰۱:۱۸ ق.ظ
آخرین ارسال: fotobetpsy
  تفاوت classification algorithm و regression algorithm چیه؟ sajadg ۷ ۱۰,۲۴۵ ۱۰ مرداد ۱۴۰۳ ۰۶:۱۹ ب.ظ
آخرین ارسال: alimohamadi123698745@gmail.com
  تفاوت WordPress.com و WordPress.org nillshid ۰ ۱,۰۶۷ ۰۲ بهمن ۱۴۰۰ ۱۰:۲۵ ق.ظ
آخرین ارسال: nillshid
  تفاوت Back-endو Front-end virtual girl ۳ ۴,۱۴۰ ۰۸ مرداد ۱۳۹۹ ۰۸:۳۷ ق.ظ
آخرین ارسال: webctcir
  تفاوت procedural با functional با imperative در چیست؟ shervan360 ۲ ۳,۳۳۶ ۲۱ دى ۱۳۹۸ ۰۴:۳۲ ب.ظ
آخرین ارسال: marvelous
  تفاوت مقاله جورنالی و مقاله کنفرانسی در چیست؟ Br2012 ۴۴ ۸۰,۳۲۶ ۲۷ مرداد ۱۳۹۸ ۰۸:۳۱ ق.ظ
آخرین ارسال: TexteRasmi.info
  تفاوت گرایش های ارشد it saeid sharifzade ۱ ۲,۹۹۳ ۲۲ تیر ۱۳۹۸ ۰۷:۵۱ ب.ظ
آخرین ارسال: khaste2
Question تفاوت تعداد مقایسه های مورد نیاز در الگوریتم های متفاوت porseshgar ۰ ۲,۱۵۳ ۱۵ بهمن ۱۳۹۷ ۱۲:۳۳ ب.ظ
آخرین ارسال: porseshgar
  تفاوت چاپ ک z__z ۳ ۳,۴۵۴ ۲۱ مهر ۱۳۹۷ ۱۲:۲۶ ق.ظ
آخرین ارسال: z__z
  تفاوت (logn!l) با !(logn) Mr.R3ZA ۵ ۴,۶۴۵ ۰۹ تیر ۱۳۹۷ ۰۳:۰۹ ب.ظ
آخرین ارسال: somaye-z

پرش به انجمن:

Can I see some ID?

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

Feeling left out?


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

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

Feeling left out?


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