الگوریتمستان - الگوریتم تقسیم و غلبه
نوشتهها با موضوع الگوریتم تقسیم و غلبه
الگوریتمستان
برچسبها
سیپلاسپلاس
آمادگی مسابقه برنامهنویسی
الگوریتم
برنامهنویسی
مسئله الگوریتمی
ریاضیات
منبع آموزشی
پایتون
یادگیری ماشین
هوش مصنوعی
الگوریتم تقسیم و غلبه
الگوریتم بازگشتی
طراحی الگوریتم
الگوریتم برنامهنویسی پویا
مقاله آموزشی
محاسبات ریاضی
نکته برنامهنویسی
کتاب مسابقات برنامهنویسی
پیمایش گراف
الگوریتم مرتبسازی
ساختمان داده
الگوریتم حریصانه
الگوریتم گراف
کتاب یادگیری ماشین
الگوریتم مسیریابی
ماتریس
ویدئوی آموزشی
جستجوی اول سطح
بازی فکری
الگوریتم کوتاهترین مسیر
درخت دودویی
الگوریتم دایکسترا
امنیت اطلاعات
مسئله کولهپشتی
صف
الگوریتم فلوید-وارشال
جستجوی اول عمق
معرفی وبسایت
الگوریتم عقبگرد
دنباله اعداد فیبوناچی
سیپلاسپلاس
ریاضیات
الگوریتم تقسیم و غلبه
بسیاری از فرآیندهای طبیعی از جمله ترکیب ساختار بدن موجودات زنده نظم مشخصی دارند و از دنباله اعدادی تبعیت میکنند که امروزه با نام دنباله اعداد فیبوناچی (فیبوناتچی - Fibonacci) شناخته میشود. مشهورترین خاصیت این اعداد نسبت دو جمله متوالی آنها به ازای جملات بزرگ دنباله است که به عدد طلایی مشهور است ...
دنباله اعداد کاتالان و محاسبه آن
سیپلاسپلاس
ریاضیات
الگوریتم تقسیم و غلبه
دنباله اعداد کاتالان (Catalan Numbers) یکی از دنبالههای عددی مشهور ریاضیات است که برای عدد نامنفی n به صورت $C_n$ نمایش داده میشود. $C_n:\qquad 1,\;1,\;2,\;5,\;14,\;42,\;132,\;429,\;1430,\;4862,\;16796,\;\cdots$ این دنباله کاربردهای بسیاری در مسائل شمارشی دارد ...
مسئله کاشیکاری
مسئله الگوریتمی
الگوریتم تقسیم و غلبه
الگوریتم بازگشتی
یکی از مسائل جالب طراحی الگوریتم مسئله کاشیکاری یا فرش کردن زمین با موزاییک است. فرض کنید قطعه زمین مربعی شکل با ابعادی از توان عدد دو داریم. هدف فرش کردن این قطعه زمین با استفاده از موزاییکهایی با شکل L است به قسمی که یکی از خانههای زمین شطرنجی شده فوق پوشیده نشود ...
درخت جستجوی دودویی
سیپلاسپلاس
الگوریتم تقسیم و غلبه
ساختمان داده
درخت دودویی (Binary Tree) درختی است که هر گره آن دارای حداکثر دو گره فرزند است که به آنها فرزند راست و چپ گره گفته میشود. به همین ترتیب زیردرختی که فرزند راست در رأس آن قرار دارد زیردرخت راست و زیردرختی که فرزند چپ در رأس آن قرار دارد زیردرخت چپ گره نامیده میشوند ...
برج هانوی
سیپلاسپلاس
مسئله الگوریتمی
پایتون
علاقهمندان به مباحث مختلف طراحی الگوریتم و همینطور شرکتکنندگان مسابقات برنامهنویسی به خوبی میدانند که یکی از مهمترین پارامترهای طراحی موفقیتآمیز یک الگوریتم، شیوه صحیح فکر کردن روی حل مسئله است. حل انواع سوالات الگوریتمی به ما کمک میکند ذهن خودمان را برای حل مسائل پیچیدهتر آماده کنیم ...
ضرب زنجیرهای ماتریسها
سیپلاسپلاس
ریاضیات
الگوریتم تقسیم و غلبه
مسئله ضرب زنجیرهای ماتریسها و پرانتزبندی بهینه آن یکی از مثالهای مشهور کاربرد برنامهنویسی پویا در حل مسائل بهینهسازی است. فرض کنید قصد داریم حاصلضرب عبارت ماتریسی $ A_{3 \times 7} \times B_{7 \times 8 } \times C_{8 \times 4} $ را محاسبه کنیم ...
الگوریتمهای تقسیم و حل
سیپلاسپلاس
الگوریتم تقسیم و غلبه
الگوریتم بازگشتی
یکی از روشهای پرکاربرد و محبوب برای طراحی الگوریتمها روش Divide and Conquer است که در زبان فارسی به صورت الگوریتمهای تقسیم و حل یا تقسیم و غلبه ترجمه شده است. در این روش، دادهها به دو یا چند دسته تقسیم شده و حل میشوند ...
الگوریتم ضرب استراسن
سیپلاسپلاس
ریاضیات
الگوریتم تقسیم و غلبه
ضرب ماتریسها یک عمل ریاضی است برای ترکیب دو ماتریس است که در مباحث مختلفی مانند گرافیک کامپیوتری، فیزیک و یادگیری ماشین کاربرد دارد. در این عملیات، برای هر عنصر از ماتریس حاصل، عناصر سطرهای ماتریس اول با عناصر ستونهای ماتریس دوم ضرب میشوند و مجموع این ضربها بهعنوان عنصر متناظر در ماتریس جدید قرار میگیرد ...
پیمایش درخت دودویی
سیپلاسپلاس
الگوریتم تقسیم و غلبه
الگوریتم بازگشتی
در علم کامپیوتر و ساختمان دادههای برنامهنویسی منظور از درخت دودویی درختی است که از یک گره به نام ریشه و حداکثر دو زیردرخت برای این گره تشکیل شده است که هر کدام از این دو زیردرخت خودشان یک درخت دودویی هستند ...
الگوریتم مرتبسازی سریع
سیپلاسپلاس
پایتون
الگوریتم تقسیم و غلبه
روش مرتبسازی سریع (Quick Sort) یکی از الگوریتمهای مشهور مرتبسازی دادهها است. این الگوریتم طی مراحل بازگشتی زیر یک روش تقسیم و غلبه برای مرتب کردن دادهها ارائه مینماید: 1- انتخاب عنصر محوری: یکی از عناصر آرایه به عنوان عنصر محوری (pivot) - به عنوان مثال عنصر اول - انتخاب میشود ...
محاسبه ضرایب دوجملهای
سیپلاسپلاس
ریاضیات
الگوریتم تقسیم و غلبه
ترکیب (Combination) به انتخاب تعدادی عنصر از یک مجموعه بزرگتر بدون در نظر گرفتن ترتیب آنها اشاره دارد. در ترکیب، برخلاف جایگشت (Permutation)، ترتیب انتخاب عناصر مهم نیست. این مفهوم در ریاضیات کاربرد گستردهای دارد و یکی از موارد اصلی استفاده از آن در محاسبهی ضرایب بسط دوجملهای است ...
الگوریتم مرتبسازی ادغامی
سیپلاسپلاس
پایتون
الگوریتم تقسیم و غلبه
روش مرتبسازی ادغامی (Merge Sort) یک روش مرتبسازی مبتنی بر مقایسه عناصر با استفاده از روش تقسیم و غلبه است. این روش از مراحل بازگشتی زیر تشکیل یافته است: 1- آرایه را به دو زیرآرایه با اندازه تقریبا یکسان تقسیم کن ...
الگوریتمهای ریشهیابی
ریاضیات
پایتون
الگوریتم تقسیم و غلبه
منظور از ریشهها یک تابع مقادیری برای متغیرهای ورودی آن هستند که به ازای آنها خروجی تابع صفر شود. به عنوان مثال خروجی تابع $f(x)=2x-4$ به ازای $x=2$ صفر یا مقدار $2$ ریشه معادله $2x-4=0$ است. به همین ترتیب در مورد معادلات درجه دوم نیز میدانیم چطور میتوانیم به ریشه یا ریشهها در صورت موجود بودن دست پیدا کنیم ...
محاسبه دترمینان ماتریس
ریاضیات
الگوریتم تقسیم و غلبه
الگوریتم بازگشتی
دترمینان ماتریس مربعی - که به صورت $ \vert A \vert $ یا $ det( A ) $ نمایش داده میشود - یکی از مفاهیم مشهور جبر خطی است که کاربردهای بسیاری در علوم مختلف دارد. امکان محاسبه سریع دترمینان یک ماتریس با ابعاد بزرگ بحث مهمی است که در ادامه سه روش محاسباتی رایج و پیچیدگی زمانی آنها مرور خواهند شد ...