غلاف محدب: تفاوت میان نسخهها
محتوای حذفشده محتوای افزودهشده
بدون خلاصۀ ویرایش |
FreshmanBot (بحث | مشارکتها) جز اصلاح فاصله مجازی + اصلاح نویسه با استفاده از AWB |
||
خط ۱:
[[پرونده:ConvexHull.svg|بندانگشتی|پوش محدب: مثال کِش.]]
در ریاضیات، پوشش محدب(Convex hull) یا لفاف محدب مجموعه از نقاط در صفحه اقلیدسی یا فضای اقلیدسی، کوچکترین مجموعه محدبی است که شامل این مجموعه
مسئله یافتن پوشش محدب مجموعه نامحدود از نقاط در صفحه یا دیگر
==
ما در این قسمت دو الگوریتم برای یافتن پوش محدب مجموعهای از نقاط ارائه خواهیم داد.خروجی هر دوی این [[الگوریتم|الگوریتمها]] رئوس پوش محدب در جهت پادساعتگرد خواهد بود.
== الگوریتم پیمایش گراهام ==
مجموعه نقاط ورودی را Q در نظر بگیرید.الگوریتم پیمایش گراهام{{انگلیسی|Grham's Scan}} با در نظر گرفتن یک پشته از نقاط کاندید، پوش محدب را پیدا میکند(ما این پشته راs می نامیم).در این روش همه نقاط یک بار در پشته اضافه میشوند و نقاطی که بر روی محیط پوش محدب قرار ندارند در نهایت از پشته حذف میشوند
شبه کد زیر الگوریتم پیمایش گراهام را
{{چپچین}}
خط ۳۲:
{{پایان چپچین}}
در خط 1 این کد ابتدا از بین نقاط Q نقطهای را که کمترین مختصه y را دارد انتخاب میکند و آن را <math>p_0</math> می نامد. و سپس در خط 2 نقاط باقیمانده را نسبت به زاویهٔ قطبی آنها نسبت به <math>p_0</math> مرتب میکند. در این
در زیر
{{چپچین}}
<source lang="csharp">
خط ۱۶۹:
== پیچیدگی الگوریتم پیمایش گراهام ==
در این جا نشان می دهیم که زمان اجرای الگوریتم گراهام از <math>O(nlog n)\,\!</math> است. خط 1 الگوریتم زمان <math>O(n)\,\!</math> را مصرف میکند چون یک جستجوی ساده بر روی نقاط است. خط 2 الگوریتم را در صورتی که با الگوریتم [[مرتبسازی ادغامی]]
== الگوریتمJarvis's march ==
[[پرونده:convexhull.gif|300px|بندانگشتی|چپ|300px|نمونهای از فرایند اجرای الگوریتمJarvis's march.]]
Jarvis's march از روشی به نام
این الگوریتم به این صورت عمل میکند که ابتدا نقاط را بر اساس مختص Yشان مرتب کرده
برای ساختن زنجیره چپ {{انگلیسی|left chain}} از <math>p[n]</math> (آخرین نقطهٔ مجموعه P)شروع کردهودوباره نقطهای را انتخاب میکنیم که نسبت به <math>p[n]</math> کمترین زاویه قطبی را دارد اما این بار نسبت به قسمت منفی محور X و آن نقطه را نیز به مجموعهٔ C اضافه میکنیم و این کار را برای این نقطه تکرار میکنیم تا به نقطه <math>p[0]</math> اولیه بر گردیم. در این صورت مجموعه C ساخته شده همان پوش محدب مورد نظر است.
|