تالار گفتمان مانشت
پیچیدگی زمانی - نسخه‌ی قابل چاپ

پیچیدگی زمانی - noor2360 - 15 مهر ۱۳۹۱ ۱۱:۴۹ ق.ظ

با سلام پیچیدگی زمان این حلقه چی میشه؟
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
}
x=x+1
n=n-1
{

پیچیدگی زمانی - Jooybari - 15 مهر ۱۳۹۱ ۱۲:۰۹ ب.ظ

سلام. پیچیدگیش از مرتبه n میشه. فکر کنم کمتر از n بار دستور داخل حلقه درونی اجرا بشه. چون مقدار n همینجوری کم میشه و قبل از اینکه به صفر برسه از i کمتر میشه و از حلقه خارج میشه. تعداد دفعات اجراش میشه حدود n-lgn که از مرتبه n میشه.

پیچیدگی زمانی - MojtabaArab - 19 مهر ۱۳۹۱ ۰۹:۲۰ ب.ظ

سلام
به ازای i=1 جمله x=x+1 ء n/2 بار اجرا میشود
به ازای i=1 جمله x=x+1 ء n/4 بار اجرا میشود
به همین ترتیب : تعداد اجرای دستور x=x+1 .....،=>ء(.........n/2+n/4+n/8) که اگر از n فکتور بگیریم عبارت زیر بدست می آید:
n*((1/2)/(1-(1/2))=(....1/2+1/4+1/8)n......که متبه اجرایی آن میشود( تتا n)