اولین باره که به کاهو میای؟ راهنمای سایت رو حتما بخون!

ورود ثبت‌نام راهنما درباره‌ی کاهو
پرسش‌ها برچسب‌ها کاربر‌ها سوال بپرسید!

آمار پرسش:

  • پرسیده شده: 2014-06-01 02:05:11 -0500
  • مشاهده شده: 998 بار
  • بروز شده: 2014-06-04 01:28:54 -0500

پرسش‌های مشابه:

پیدا کردن مولفه های قویا همبند گراف جهت دار

یافتن کوتاه ترین دور در گراف ساده

کد برای بررسی یک ریختی 2 گراف

جزوه ی برنامه نویسی قسمت (گراف)

پيدا كردن دومين كوتاهترين مسير بين دو راس گراف با توجه به الگوريتم ديكسترا

شبکه $n\times n$ پایدار

پیدا کردن گراف دوبخشی کامل یکرنگ

حداکثر تعداد یال‌های گراف بدون مثلث

یافتن کوچکترین پیچ و مهره با مقایسه آنها

آشپزباشی:‌ مرتب کردن پشته با برعکس کردن یک دنباله متوالی از ابتدای آن

نکاتی در مورد نوشتن پاسخ:

در این قسمت می‌تونی به یک پرسش پاسخ بدی. اگه می‌خوای در مورد پرسش بحث و اظهار نظر کنی از قسمت «ثبت نظر» استفاده کن.
پاسخت رو دقیق و کامل بنویس، از عکس استفاده کن و اگه لازمه به منابع (کتاب یا سایت) ارجاع بده.
اگه پرسش یا پاسخ‌ها مفید هستند حتما بهشون رای بده تا پرسش‌ها و پاسخ‌های خوب مشخص بشن.

استفاده از ویرایشگر:

توی قسمت پیش‌نمایش می‌تونی ببینی متنی که نوشتی چجوری روی سایت دیده میشه.
خیلی مهم: برای اینکه به خط بعد بری باید دوتا Enter بزنی.
می‌تونی از تگ‌های معمولی و ساده‌ی html هم استفاده کنی.
با دکمه‌هایی که بالای ویرایش‌گر قرار دارند کلی کار می‌شه کرد. از عکس‌گذاشتن بگیر تا لیست شماره‌دار. حتما امتحان‌شون کن.

علائم ریاضی:

برای نوشتن علائم ریاضی می‌تونی از Mathjax استفاده کنی. راهنمای Mathjax رو از سایت math.stackexchange بخون.
برای نوشتن عبارت ریاضی وسط جمله، اون عبارت رو بین دوتا $ قرار بده.
برای نوشتن عبارت ریاضی تو یه خط جدید اون رو بین دوتا $$ قرار بده.

آیا گراف قویا همبند است؟

5

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

الگوریتم گراف
2014-06-01 02:05:11 -0500
پویان 2066 ● 11 ● 18 ● 40
پاک‌کردن   ویرایش سوال
نظرات

سلام میدونستید انجمن علمی نخبگان دانشگاه صنعتی شریف مسابقه تخصصی مهارت سنجی برنامه نویسی و داده کاوی گذاشته است آدرس سایتش www.fanavard.com

2015-08-06 09:45:49 -0500 امیر شکری

سلام میگم یک سر به سایت www.fanavard.ir بزنید. مسابقات برنامه نویسی شون شروع شده. گواهی رسمی از طرف دانشگاه شریف می ده. 50 تا سکه هم جایزشه

2016-10-27 08:38:56 -0500 امیر شکری

3 پاسخ

8

از یک راس دلخواه $v$ ، $dfs$ میزنیم و همه ی رئوسی که از $v$ بهشون میشه رفت رو پیدا میکنیم. برای قویاَ همبند بودن گراف لازمه که از $v$ به همه بشه رفت پس اگه راسی وجود داشت که از $v$ بهش نشه رسید، قطعا گراف قویا همبند نیست.
حال گراف رو چپه میکنیم!! یعنی از روی گراف $G$ ، $G'$ رو میسازیم به این صورت که در $G'$ به ازای هر دو راس $v$ و $u$ ، $v$ به $u$ یال جهت دار داره اگر و تنها اگر در $G$ ، $u$ به $v$ یال جهت دار داشته باشه. واضحه که هر مسیر تو$G'$ متناظر با یک مسیر تو $G$ در جهت برعکس هست (یعنی اگر در $G'$ ، از $a$ به $b$ بشه رفت در $G$، از $b$ به $a$ میشه رفت.)
حال دوباره تو $G'$ از همان راس $v$، $dfs$ میزنیم و رئوسی رو پیدا میکنیم که الان از $v$ بهشون بشه رسید و متناظر با رئوسی در $G$ هستند که از اونا به $v$ بشه رسید. این بار هم اگر راسی دیده نشه یعنی گراف قویا همبند نیست.
لم : اینکه در در هر دو $dfs$ همه ی رئوس دیده شوند، برای قویا همبند بودن گراف شرط کافی هم هست! چون اگر از هر راسی به $v$ بشه رسید و از $v$ هم به هر راسی بشه رفت، یعنی از هر راسی به هر راس دیگه ای میشه رفت! $^_^$

2014-06-01 07:13:56 -0500
محمد مهدی 1955 ● 5 ● 12 ● 40
پاک‌کردن   ویرایش پاسخ
2

می دونیم که اگه یک گراف همیلتونی باشه قویا همبند هم هست پس می تونیم با یه dfs از راس دلخواه حرکت کنیم اگه که بعد از دیدن n-1 راس به اون رسیدیم دور همیلتونی داره در غیر اینصورت نداره.

2014-06-01 03:33:19 -0500
عطا 1110 ● 7 ● 12 ● 29
پاک‌کردن   ویرایش پاسخ
نظرات

عطا جان، پیدا کردن دور هامیلتونی توی یک گراف خودش یک مساله متفاوت و بسیار سخت (NP-Hard) هست که الگوریتمی با زمان اجرای چند جمله ای نداره.

2014-06-01 03:39:37 -0500 کلاه قرمزی

یه سوال با استفاده از راه من چرا نمی شه پیدا کرد ؟ بعد یه سوال دیگه چرا با استفاده از اینکه گراف همیلتونی است ات ا قویا همبند باشد پیدا کردن دور همیلتونی ریدیوس نمی شه ؟

2014-06-01 03:47:33 -0500 عطا

گرافهای جهت داری که دور هامیلتونی دارند قویا همبند هستند اما همه گرافهای قویا همبند هامیلتونی نیستند! نکته اینه. خوب فکر کن اگه پیدا نکردی مثالش رو یک سوال بذار روی سایت :-)

2014-06-01 03:53:44 -0500 کلاه قرمزی

آهان آره حواسم نبود گراف ممکنه کامل نباشه :)

2014-06-01 04:25:25 -0500 عطا

حتی واسه گرافهای کامل هم فکر کنم میشه مثال نقض پیدا کرد.

2014-06-01 06:40:39 -0500 کلاه قرمزی
1

کافیه برای هر راس به طور جداگانه الگوریتم bfs رو اجرا کنی و یه آرایه n*n بگیریو همشو 0 کنی و از راس i به هر راسی که رسیدی (مثلا به راس m) خونه (i,m) رو 1 کنی. این لینک از ویکیپدیا هم یه الگوریتم به اسم کساراجو معرفی کرده که برای پیدا کردن تعداد مولفه های همبندی گراف جهت دار استفاده میشه:

2014-06-01 02:28:43 -0500
روبیک 2379 ● 13 ● 27 ● 44
پاک‌کردن   ویرایش پاسخ
نظرات

ممنون ولی با (O(V + E میخواستم

2014-06-01 02:56:08 -0500 پویان

کساراجو الگوریتم پیدا کردن مولفه های قویا همبندی ـه . چه جالب ... فک می کردم پیدا کردن مولفه های قویا همبندی NP باشه ولی کساراجو (O(V + Eهست

2014-06-02 15:36:44 -0500 محمدمهدی

پاسخ شما

فقط در صورتی که پاسخی برای این پرسش دارید، آن را اینجا بنویسید و برای بحث کردن از قسمت «ثبت‌ نظر» استفاده کنید. شما می‌توانید قبل از وارد شدن به سایت پاسخ خود را بنویسید. این پاسخ ذخیره می‌شود و زمانی که شما وارد سایت شدید یا ثبت‌نام کردید منتشر می‌شود.

پیش‌نمایش:

کلیه‌ی حقوق این سایت متعلق به کمیته‌ی ملی المپیاد کامپیوتر است.