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

پیچیدگی زمانی - haricanboy - 18 دى ۱۳۹۳ ۰۱:۴۰ ب.ظ

سلام دوستان
۲ تا سوال مربوط به ساختمان داده دارم راه حل و جوابش رو میخوام پیدا کنم چطوری حل میشن

۱- مرتبه اجرایی الگوریتم زیر را حساب نمایید.
کد:
For j=1 to m do
       For  k=1 to j do
                     X=x+1
---------------------------------------------------------
۲- با در نظر گرفتن ضابطه مقابل تعداد عمل جمع برای N=8 را محاسبه نمایید.(راهنمایی درخت مربوطه را ترسیم نمایید).
کد:
int T(int n){
if(n<=1){
   return 1;
else
return( T(n/2) + T(n/2));
}
}
------------------------------------------------------
ممنون

RE: 3 سوال مربوط به ساختمان داده - sharareh_moradi - 18 دى ۱۳۹۳ ۰۱:۵۱ ب.ظ

(۱۸ دى ۱۳۹۳ ۰۱:۴۰ ب.ظ)haricanboy نوشته شده توسط:  سلام دوستان
۲ تا سوال مربوط به ساختمان داده دارم راه حل و جوابش رو میخوام پیدا کنم چطوری حل میشن

عنوان سه سوال اما متن دو سوال وجود داره Big Grin
اولی تعداد تکرار خط آخر رو بدست بیارین
میشه
n
+
n-1
+
n-2
+
...
که میشه از درجه n به توان دو

سوال دومتون هم از روش قضیه اصلی میشه حلش کرد که میشه از درجه n

RE: 3 سوال مربوط به ساختمان داده - moloodi - 18 دى ۱۳۹۳ ۰۱:۵۷ ب.ظ

من اولی رو جواب میدم دومی واقعا اگر درخت و رسم کنی بنظر خیلی ساده میاد.
اما سوال اول:
دستور x+1 در بار اول یک بار اجرا میشه ، در بار دوم دوبار ، در بار سوم سه بار و الی آخر
پس باید مقدار سری
۱+۲+۳+۴+۵ تا m و حساب کنیم که از رابطه ۲/ (m*(m+1 محاسبه میشه و برابر m^2 هست

RE: 3 سوال مربوط به ساختمان داده - haricanboy - 18 دى ۱۳۹۳ ۰۶:۲۳ ب.ظ

ممنون دوستان
لطف کردین
تو سوال دو درخت رو میتونم رسم کنم ولی بعد رسم درست نحوه محاسبه و پیدا کردن جواب رو بلد نیستم یعنی یادم رفته اونو توضیح بدین لطفاً و اینکه وقتی جواب رو پیدا کردم از کجا بدونم درسته یا نه...