نمایش نتایج 1 تا 10 از 10

نام تاپیک: یک سوال در مورد محاسبه order

  1. #1

    Tick یک سوال در مورد محاسبه order

    سلام
    order تابع زیر چنده

     
    for(i=1;i<=n;i++)
    for(j=1;j<=i/2,j++)
    {
    ----
    ----
    for(k=1;k<13;k++)
    {
    ----
    }
    ----
    }


    o(n^2)


    ضریب مخفی
    order = 1/2 n^2 یا order = 13/2 n^2

    سوالم اینه که در محاسبه ضریب مخفی oerder تابع ؛ سومین for که به تعداد محدودی
    اجرا میشه باید در نظر گرفته بشود یا خیر
    ممنون

  2. #2
    کاربر تازه وارد
    تاریخ عضویت
    دی 1384
    محل زندگی
    ماهشهر
    پست
    99
    حلقه اولی nو حلقه دومی lognو حلقه سومی 13 بار انجام میشه. و عدد ثابت رو میشه نادیده گرفت. که اگه اشتباه نکرده باشم کلش میشه nlogn

  3. #3
    به نظر من هم از مرتبه nlog n هست.

  4. #4
    سلام
    order که همون n^2 هستش نه nlogn
    سوالم اینه که for سومی در ضریب مخفی تاثیر داره یا نه؟

  5. #5
    کاربر تازه وارد
    تاریخ عضویت
    دی 1384
    محل زندگی
    ماهشهر
    پست
    99
    نقل قول نوشته شده توسط mahdi bg مشاهده تاپیک
    سلام
    order که همون n^2 هستش نه nlogn
    سوالم اینه که for سومی در ضریب مخفی تاثیر داره یا نه؟
    میشه توضیح بدی چرا nlognنیست؟

  6. #6
    سلام

    نقل قول نوشته شده توسط lvenoos مشاهده تاپیک
    میشه توضیح بدی چرا nlognنیست؟
    logn زمانی ساخته میشه که همچین چیزی داشته باشیم

    for(i=1;i<=n;i=(i*2))

    یا
    for(i=n;i>1;i=(i/2))


    نه مثل کد بالا که i یکی یکی اضافه میشه
    همون طور که گفتم مشکلم در مورد for سومی که آیا 13 با تکرارش
    در ضریب مخفی تاثیر داره یا نه؟

  7. #7
    مدیر بخش آواتار whitehat
    تاریخ عضویت
    مهر 1382
    محل زندگی
    شیراز
    پست
    2,175
    سوالم اینه که for سومی در ضریب مخفی تاثیر داره یا نه؟
    می خواهید چی را بدست بیاورید؟ اگه O هست جواب سوال منفی هست ولی اگه تتا باشه تاثیر داره
    To follow the path:
    Look to the master
    Follow the master
    Walk with the master
    See through the master
    Become the master

  8. #8
    سلام
    منظورم دقیقا تتا بود می خواستم بدونم در محاسبه تتا باید 13 رو تاثیر
    بدم یا اینه که تمام اون قسمت ها رو با تتا برابر یک حل کنم
    ممنون

  9. #9
    بله حق با شماست:



      ∑(i=1 to n) ∑(j:=1 to i/2) 1 = 1/2 ∑ (i=1 to n) I =1/2 * n(n+1)/2   => O(n^2)

    و در مورد تاثیر حلقه سوم:
      n^2 < 13/4 *(n^2 +n) <100 n^2      =>   g(n)=n^2  => f(n)= teta(n^2)
    اما اگر تاثیر حلقه سوم را در نظر نگیریم :
        
    نمیتواندN^2 < 1/4 *(n^2 +n) <100 n^2 => f(n)= O(n^2)

    در نتیجه میتوان گفت که حلقه سوم در محاسبه تتا اثرگذار است.

  10. #10
    این حلقه که فقط داره تعداد عملیات رو در ضریب ثابتی ضرب می کنه...با توجه به تعریف این تابع همه چیش(!) همون n^2 می شه.
    یعنی هم O هم omega هم teta (البته از نوع capital ش)

تاپیک های مشابه

  1. دستور order by
    نوشته شده توسط mlh_poorranjbar در بخش برنامه نویسی در 6 VB
    پاسخ: 6
    آخرین پست: شنبه 17 آذر 1386, 20:32 عصر
  2. Tab Order
    نوشته شده توسط mahdi bg در بخش بانک های اطلاعاتی در Delphi
    پاسخ: 1
    آخرین پست: چهارشنبه 09 اسفند 1385, 13:51 عصر
  3. ترتیب Tab Order گاهی اوقات درست نمی شود
    نوشته شده توسط ali_abbasi22145 در بخش برنامه نویسی در Delphi
    پاسخ: 1
    آخرین پست: شنبه 15 بهمن 1384, 22:01 عصر
  4. Tab order و رفتن به فیلد بعدی
    نوشته شده توسط spicirmkh در بخش برنامه نویسی در Delphi
    پاسخ: 4
    آخرین پست: جمعه 03 بهمن 1382, 22:45 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •