۰
subtitle
ارسال: #۱
  
نحوه محاسبه پیچیدگی زمانی؟
سلام. اگر پیچیدگی زمانی t(n) را از ما بخوان که محاسبه کنیم، طبق صورت برنامه چطور باید اینکار رو انجام بدیم؟
for (i=1;i<=n;i++)
{
j=n;
while (j>=1)
j=j/2;
}
ممنون میشم اگر یک توضیحی برای سوال بالا بدین و راه حلی بگید. با تشکر
for (i=1;i<=n;i++)
{
j=n;
while (j>=1)
j=j/2;
}
ممنون میشم اگر یک توضیحی برای سوال بالا بدین و راه حلی بگید. با تشکر
۰
ارسال: #۲
  
RE: نحوه محاسبه پیچیدگی زمانی؟
(۰۳ آبان ۱۳۹۲ ۰۲:۳۴ ب.ظ)reza_a نوشته شده توسط: سلام. اگر پیچیدگی زمانی t(n) را از ما بخوان که محاسبه کنیم، طبق صورت برنامه چطور باید اینکار رو انجام بدیم؟سلام
for (i=1;i<=n;i++)
{
j=n;
while (j>=1)
j=j/2;
}
ممنون میشم اگر یک توضیحی برای سوال بالا بدین و راه حلی بگید. با تشکر
خوب حلقه داحلی منظورم همون while هست چون شمارندش داره هر دفعه تقسیم میشه به ۲ تعداد تکرارش میشود : [tex]log_2(n)[/tex]
حلقه بیرونی هم یه فور معمولی هست که ان بار اجرا میشود پس تعداد اجرا های این دو حلقه رو در هم ضرب میکنیم که میشود :
[tex]nlogn[/tex]
۰
ارسال: #۳
  
RE: نحوه محاسبه پیچیدگی زمانی؟
خیلی متشکرم. یعنی هر جا while داشت ۲ تا حساب میشه و حلقه for میشود n تا؟ بعد واحد محاسبه پیچیدگی زمانی log هست؟ ممنونم.
ارسال: #۴
  
RE: نحوه محاسبه پیچیدگی زمانی؟
Can I see some ID?
Feeling left out?
نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. رمزت رو فراموش کردی؟ اینجا به یادت میاریم! close