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

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

 
در صورت ناخوانا بودن نوشته‌ها، از مرورگر دیگری استفاده کنید.
برنامه‌نویسی، طراحی الگوریتم و حل مسئله‌های الگوریتمی الگوریتمستان الگوریتمستان الگوریتمستان 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

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

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

   

 

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

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

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