تالار گفتمان مانشت

نسخه‌ی کامل: پیچیدگی زمانی
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
سلام دوستان
۲ تا سوال مربوط به ساختمان داده دارم راه حل و جوابش رو میخوام پیدا کنم چطوری حل میشن

۱- مرتبه اجرایی الگوریتم زیر را حساب نمایید.
کد:
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));
}
}
------------------------------------------------------
ممنون
(18 دى 1393 01:40 ب.ظ)haricanboy نوشته شده توسط: [ -> ]سلام دوستان
۲ تا سوال مربوط به ساختمان داده دارم راه حل و جوابش رو میخوام پیدا کنم چطوری حل میشن

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

سوال دومتون هم از روش قضیه اصلی میشه حلش کرد که میشه از درجه n
من اولی رو جواب میدم دومی واقعا اگر درخت و رسم کنی بنظر خیلی ساده میاد.
اما سوال اول:
دستور x+1 در بار اول یک بار اجرا میشه ، در بار دوم دوبار ، در بار سوم سه بار و الی آخر
پس باید مقدار سری
1+2+3+4+5 تا m و حساب کنیم که از رابطه 2/ (m*(m+1 محاسبه میشه و برابر m^2 هست
ممنون دوستان
لطف کردین
تو سوال دو درخت رو میتونم رسم کنم ولی بعد رسم درست نحوه محاسبه و پیدا کردن جواب رو بلد نیستم یعنی یادم رفته اونو توضیح بدین لطفاً و اینکه وقتی جواب رو پیدا کردم از کجا بدونم درسته یا نه...
لینک مرجع