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

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

 
در صورت ناخوانا بودن نوشته‌ها، از مرورگر دیگری استفاده کنید.
برنامه‌نویسی، طراحی الگوریتم و حل مسئله‌های الگوریتمی الگوریتمستان الگوریتمستان الگوریتمستان FB Twitter

چرا الگوریتم؟

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

آنچه در الگوریتمستان می‌خوانید مجموعه‌ای از نوشته‌ها در حوزه‌ی طراحی الگوریتم‌ها، ساختمان داده‌ها، مسائل الگوریتمی و راهنمای حل آنها، در کنار نکات آموزشی برنامه‌نویسی با زبان برنامه‌نویسی ++C به عنوان یک ابزار قدرتمند برای پیاده‌سازی و اجرای الگوریتم‌ها است.

»  کتاب Competetive Programming
معرفی کتاب Competitive Programming برای علاقه‌مندان به شرکت در مسابقات برنامه‌نویسی و المپیاد کامپیوتر با قابلیت دانلود نسخه‌ی الکترونیکی

ویراست سوم کتاب برنامه‌نویسی رقابتی با نام کامل Competitive Programming 3: The New Lower Bound of Programming Contests با تلاش Steven Halim و Felix Halim از مربیان تیم‌های برنامه‌نویسی ACM-ICPC سنگاپور تالیف و  در سال ۲۰۱۳ منتشر شده است که امروزه به عنوان یکی از منابع مناسب برای آمادگی تیم‌های شرکت‌کننده در مسابقات برنامه‌نویسی الگوریتمی بویژه مسابقات برنامه‌نویسی ACM-ICPC توصیه می‌شود.

این کتاب شامل نکات تکنیکی برنامه‌نویسی در مسابقات ACM-ICPC و همینطور معرفی ساختمان داده‌ها و الگوریتم‌های پر کاربرد در ۹ فصل با جزئیات زیر است.

1 Introduction

    1.1 Competitive Programming

ادامه ...
»  پیچیدگی زمانی اجرای الگوریتم
بررسی مفهوم پیچیدگی زمانی الگوریتم برای بررسی کارایی آن و مقایسه‌ی الگوریتم‌ها
»  الگوریتم جستجوی اول عمق (DFS)
معرفی الگوریتم جستجوی اول عمق (DFS) برای پیمایش گراف و کاربردهای آن به همراه قطعه کد به زبان برنامه‌نویسی ++C
»  مرتب‌سازی سریع
آشنایی با روش مرتب‌سازی سریع، همراه با قطعه کدهای نمونه به زبان‌های برنامه‌نویسی ++C و Python
»  الگوریتم جستجوی اول سطح (BFS)
معرفی الگوریتم جستجوی اول سطح (BFS) برای پیمایش گراف و کاربردهای آن به همراه قطعه کد به زبان برنامه‌نویسی ++C
»  روش تقسیم و غلبه
آشنایی با روش Divide and Conquer (تقسیم و حل / تقسیم و غلبه) و کاربردهای آن در مرتب‌سازی، جستجو و حل مسائل الگوریتمی دیگر
»  مرتب‌سازی درجی
آشنایی با روش مرتب‌سازی درجی، همراه با قطعه کد به زبان‌های برنامه‌نویسی ++C و Python
»  مرتب‌سازی حبابی
آشنایی با روش مرتب‌سازی حبابی و بحث در مورد عملکرد آن، با قطعه کدها به زبان برنامه‌نویسی ++C و Python
»  سینوس و کسینوس را قورت بده
محاسبه‌ی جدولی سینوس و کسینوس زوایای مشهور
»  برج هانوی
بررسی مسئله‌ی برج هانوی و روش‌های حل بازگشتی و غیربازگشتی آن به همراه کد به زبان ++C
»  محاسبه‌ی دترمینان ماتریس
بررسی روش‌های بسط لاپلاس، گاوس، فرمول تحویل و ساروس، برای محاسبه‌ی دترمینان ماتریس مربعی و پيچيدگي زمانی آنها
»  معمای هشت وزیر
بررسی معمای هشت وزیر یا n وزیر و راهبرد عقبگرد برای حل مسئله
»  دنباله‌ی اعداد فیبوناچی
بررسی الگوریتم‌های محاسبه‌ی دنباله‌ی اعداد فیبوناچی و کارایی آنها
»  حلقه‌های تکرار در ++C
آشنایی با حلقه‌های تکرار در زبان برنامه‌نویسی ++C و دستورات کنترلی مورد استفاده در آن
»  ظرف‌ها در ++C
معرفی انواع ظرف‌ها (نگهدارنده‌ها - containers) در زبان برنامه‌نویسی ++C

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

   

 

عمر سایت: ۴۵۰۳ روز

کاربران حاضر: ۲ کاربر

امتیاز‌ها:
  • تعداد امتیاز ثبت شده: ۳۲۱۶ امتیاز
  • میانگین امتیازها: ۴.۲۴ از ۵.۰۰
بازدید‌ها:
  • امروز:  ۲۶۸ بازدید
  • ۲۴ ساعت گذشته:  ۶۴۵ بازدید
  • ۷ روز گذشته:  ۴۲۵۱ بازدید
  • ۳۰ روز گذشته:  ۱۹۱۱۵ بازدید
  • ۱ سال گذشته: ۴۵۶۱۵۲ بازدید
  • کل بازدیدها: ۴۷۴۱۵۱۲ بازدید