الگوریتمستان

برنامه‌نویسی، طراحی الگوریتم و حل مسئله‌های الگوریتمی

 
در صورت ناخوانا بودن نوشته‌ها، از مرورگر دیگری استفاده کنید.
نوشته‌ها با برچسب جستجوی اول سطح نوشته‌ها با برچسب جستجوی اول سطح - الگوریتمستان الگوریتمستان الگوریتمستان
نوشته‌ها با برچسب «

جستجوی اول سطح

»

مسئله

پل اردوش (اردیش - Paul Erdős) ریاضیدان مشهور و برجسته‌ی قرن بیستم است که تا پایان عمر خود تلاش گسترده‌ای برای انتشار مقالات علمی داشت و همکاری با وی در انتشار مقاله یک افتخار بزرگ برای هر ریاضیدان محسوب می‌گردد.

با توجه به آنکه همکاری با ایشان برای هر کس ممکن نبود، تلاش می‌کردند با نفراتی در انتشار مقاله‌ی علمی همکاری کنند که با این دانشمند بزرگ مقاله داشتند. این رویکرد باعث پدید آمدن عدد اردوش (Erdős number) یا فاصله‌ی همکاری اردوش شد؛ یعنی برای نویسندگانی که به صورت مستقیم با ایشان همکاری داشتند عدد 1 و برای کسانی که با این نفرات مقاله داشتند عدد 2 نسبت داده شد و ارتباطات دورتر نیز به همین ترتیب با اعداد طبیعی بعدی مشخص شدند.

ادامه ...

مسئله

جدولی با n سطر و m ستون در نظر بگیرید. در تمام خانه‌های این جدول عدد 0‌ نوشته شده است. در ابتدای کار حامد در خانه‌ای از جدول ایستاده است. او عدد این خانه را پاک می‌کند و عدد 1 را به جای آن می‌نویسد. حامد شروع به حرکت می‌کند و در هر ثانیه یک خانه به بالا، راست، پایین یا چپ می‌رود. او با وارد شدن به هر خانه، عدد نوشته شده در خانه را پاک می‌کند و عددی یک واحد بزرگتر از آخرین عددی که نوشته است را می‌نویسد و بعد از مدتی متوقف می‌شود. می‌دانیم حامد در انتهای حرکت خود تمام خانه‌های جدول را دیده است.

ادامه ...

الگوریتم پیمایش اول سطح یا جستجوی اول سطح (Breadth First Search - BFS) از جمله الگوریتم‌های مشهور پیمایش و جستجوی گراف است که در حل مسائل الگوریتمی و هوش مصنوعی کاربرد دارد. این الگوریتم برای پیمایش و جستجوی گراف از یک صف برای نگهداری ترتیب جستجو استفاده می‌کند.

الگوریتم BFS با وارد کردن گره مبدأ به صف پردازش شروع شده و تا خالی نشدن این صف مراحل زیر را تکرار می‌شود:

1- عنصر جلوی صف را به عنوان گره جاری انتخاب و از صف حذف کن.

2- گره جاری را پردازش کن.

ادامه ...

الگوریتم دایکسترا (دیکسترا، دایجسترا - Dijkstra) یک راهکار حریصانه برای یافتن کوتاهترین مسیر از مقصد ثابت (تک منبع) به سایر گره‌های گراف وزن‌دار است. این گراف می‌تواند معرف مسیرهای یک شهر و تقاطع‌های آن باشد که انبار شرکت در یک گره آن قرار داشته و هدف یافتن کوتاهترین مسیر به هر محل دیگر از این انبار است. طبیعتا این الگوریتم در یافتن کوتاهترین مسیر بین دو گره مشخص نیز کاربرد دارد. تنها شرط لازم برای استفاده از این الگوریتم نامنفی بودن وزن یال‌های گراف است.

ادامه ...

الگوریتمستان در تلگرام

   

 

پیوند کوتاه:
برچسب‌ها
#جستجوی اول عمق #گراف #آمادگی المپیاد کامپیوتر #سوالات مسابقات ACM-ICPC #ترجمه‌ی فارسی سوالات ACM #معرفی وب‌سایت #الگوریتم‌های برنامه‌نویسی پویا #کتاب مسابقات برنامه‌نویسی #آموزش ساختمان داده‌ها #پیمایش گراف #ساختمان داده #ترجمه‌ی فارسی سوالات برنامه‌نویسی #نمونه سوال فارسی مسابقات برنامه‌نویسی #الگوریتم‌های عقبگرد #مسابقه برنامه نویسی #مسئله‌های الگوریتمی #درخت پوشا #نمونه سوال فارسی مسابقه‌ی ACM #وبلاگ #منبع آموزشی #برنامه‌نویسی ++C #مسابقات برنامه‌نویسی ACM #الگوریتم‌های مسیریابی #دانلود کتاب #سوالات مسابقات برنامه‌نویسی بیان #الگوریتم دایکسترا #حل سوالات Timus Online Judge #محاسبات ریاضی #تمرین طراحی الگوریتم #آموزش برنامه‌نویسی ++C #سوالات UVa Online Judge #الگوریتم‌های کوتاهترین مسیر #مسئله‌های برنامه‌نویسی #صف #نمونه سوالات مسابقه برنامه‌نویسی #مسئله‌ی کوله‌پشتی #الگوریتم‌های مرتب‌سازی #تمرین مسابقه برنامه‌نویسی #مسابقه برنامه‌نویسی #تمرین المپیاد کامپیوتر #الگوریتم‌های حریصانه #کتاب الگوریتم #کتابخانه قالب استاندارد ++C #تکنیک‌های طراحی الگوریتم #ترجمه‌ی فارسی سوالات UVa Online Judge #الگوریتم #نمونه سوال فارسی مسابقات ACM #جستجوی اول سطح #ماتریس #الگوریتم‌های بازگشتی #سوالات چالشی برنامه‌نویسی #آموزش طراحی الگوریتم #مسأله‌های برنامه‌نویسی #حل سوالات UVa Online Judge #نمونه سوال مسابقه ACM #سوالات برنامه‌نویسی #ویدئوی آموزشی #برنامه‌نویسی #آموزش الگوریتم #الگوریتم‌های گراف #حل مسئله‌‌ی الگوریتمی #حل سوالات مسابقات برنامه‌نویسی #ترجمه فارسی سوالات کتاب Programming Challenges #آمادگی مسابقه ACM #مسأله‌های الگوریتمی #نکات برنامه‌نویسی #مسابقات برنامه‌نویسی #درخت‌ها #الگوریتم فلوید-وارشال #حل سوالات ACM-ICPC #تمرین مسابقه‌ی برنامه‌نویسی ای‌سی‌ام #کتاب الکترونیکی #الگوریتم‌های تقسیم و غلبه #آمادگی مسابقه برنامه‌نویسی