نماد O بزرگ: تفاوت میان نسخه‌ها

محتوای حذف‌شده محتوای افزوده‌شده
Amirobot (بحث | مشارکت‌ها)
جز ربات: تصحیح جایگذاری کاما، شمارگان هزارگان
Amirobot (بحث | مشارکت‌ها)
جز ربات: تصحیح کاما، شمارگان هزارگان
خط ۱:
‫در [[پیچیدگی محاسباتی|نظریهٔ پیچیدگی محاسبا‌تی]]، '''نماد O بزرگ''' {{انگلیسی|Big O notation}} برای نشان دادن رابطه میان تعداد داده‌ها و منابع محاسباتی مورد نیاز برای حل یک مسأله با استفاده از یک [[الگوریتم]] استفاده می‌شود. استفاده از این نماد معمولاً برای بررسی زمان و یا حافظه مورد نیاز برای حل مسأله‌ای با تعداد زیادی ورودی می‌باشد.
 
در ریاضیات علامت O بزرگ رفتار حدی یک تابع را وقتی آرگومان‌های آن به یک عدد خاص یا به بینهایت میل می‌کند,می‌کند، توصیف می‌کند.علامت O بزرگ به کاربر اجازه می‌دهد که تابع را ساده کند تا بر روی نرخ رشد آن متمرکز شود. بنابراین توابع مختلف با نرخ رشد یکسان می‌توانند دارای یک علامت O مشابه باشند.
 
هرچند این علامت به عنوان بخشی از ریاضیات محض گسترش یافت ولی هم اکنون در [[پیچیدگی محاسباتی|تئوری‌های پیچیدگی محاسبات]] هم مکرراً استفاده می‌شود.
خط ۴۵:
در استفاده معمولی تعریف دقیق و رسمی علامت O مورد استفاده قرار نمی‌گیرد بلکه علامت O بزرگ برای تابع (''f'' (''x'' به صورت زیر ساده می‌شود:
 
* اگر (''f'' (''x''مجموع توابع مختلف باشد,باشد، تابع با سرعت رشد بیشتر را نگه داشته و بقیه را حذف می‌کنیم.
 
* اگر (''f'' (''x''مضربی از چند فاکتور مختلف باشد هر مقدار ثابتی را حذف می‌کنیم.
خط ۵۳:
''f'' (''x'')&nbsp;=&nbsp;6''x''<sup>4</sup>&nbsp;−&nbsp;2''x''<sup>3</sup>&nbsp;+&nbsp;5
{{پایان چپ چین}}
و ما می‌خواهیم این تابع را با استفاده از علامت O بزرگ ساده کنیم,کنیم، این تابع مجموع سه تابع 6''x''<sup>4</sup>, −2''x''<sup>3</sup>,، و 5 است.
تابع با نرخ رشد سریع تر همان تابع از مرتبه بیشتر است یعنی: 6''x''<sup>4</sup>. حال قانون دوم را اجرا می‌کنبم:
 
خط ۶۱:
علامت O بزرگ دو دامنه کاربرد دارد:
 
* در ریاضیات معمولاً برای نشان دادن این که یک [[سری هندسی]] متناهی تا چه اندازه به تابع مورد نظر نزدیک است,است، خصوصاً در مورد [[سری تیلور]] ناقص از این علامت استفاده می‌شود.
 
* در علوم کامپیوتر این علامت در تحلیل الگوریتم‌ها کاربرد دارد.
خط ۶۷:
در هر دو کاربرد تابع (''g'' (''x''که در ''O''(...) به گونه‌ای انتخاب می‌شود که تا حد امکان ساده باشد.
== تاریخچه ==
علامت O بزرگ اولین بار توسط متخصص اعداد [[Paul Bachmann]] در سال 1894,1894، در جلد دوم کتاب ''Analytische Zahlentheorie'' معرفی شد (که جلد اولش در سال 1892 چاپ شده و شامل این علامت نبود). این علامت در کارهای [[نظریه اعداد]] توسط [[Edmund Landau]] متداول شد و به همین خاطر گاهی از آن به نام Landau symbol یاد می‌شود.
 
این علامت در [[علوم کامپیوتر]] توسط [[Donald Knuth]] (که علامت‌های مربوطه [[امگا]] و [[تتا]] را نیز برای اولین بار معرفی کرد) مشهور شد.او هم چنین متذکر شد که [[علامت امگا]] توسط Hardy و Littlewood تحت معنی اندکی متفاوت قبلاً تعریف شده بوده‌است.