PDA

View Full Version : آموزش: محاسبه ی زمان اجرا؟(چطوری)



meisam_mohamadi_kh
چهارشنبه 27 آبان 1388, 09:25 صبح
هر کی گفت زمان اجرای گروه کد زیر چیه

for i:=1 to n-1 do
for j:=3 to min{ i , n/2 } do
++k

mortezamsp
چهارشنبه 27 آبان 1388, 12:23 عصر
با سلام.

اولا كه بايد i از 3 شروع بشه چون اينطوري دفعه اول حلقه اجرا نميشه!


for i:=3 to n-1 do
for j:=3 to min{ i , n/2 } do
++kحالا زمان اجرا اين ميشه:اول باید به تعداد n/2 بار از 3 تا i حساب بشه.این رو میذاری تو یه سیگما.بعد اون باید به تعداد n/2 بار هم از 3 تا n/2 حساب بشه که مقدار ثابتیه ضرب میکنیم.میشه این:


= (n/2-3)*sigma(i : 3,n/2) + ((n-1)-(n/2))*(n/2)
= ((n/2)-3)*((n/2)*(n/2)-1)/2 -6) + ((n-1)-(n/2))*(n/2)


درسته ؟

FastCode
جمعه 27 آذر 1388, 13:09 عصر
http://www.wolframalpha.com/input/?i=((n/2)-3)*((n/2)*(n/2)-1)/2+-6)++%2B++((n-1)-(n/2))*(n/2)
اطلاعات خوبی بهت میده.
من که خودم :کف:

mina.sarvi
جمعه 27 آذر 1388, 23:42 عصر
من جواب سوالتونو میدونم اما نمی تونم تایپ کنم:قهقهه::تشویق: