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

نام تاپیک: الگوریتم بازگشتی شمارش تعداد درخت با n گره

  1. #1

    الگوریتم بازگشتی شمارش تعداد درخت با n گره

    سلام
    الگوریتم بازگشتی شمارش تعداد درخت با n گره
    رو میخواستم
    فقط الگوریتم رو هو بگین کافیه
    ممنون

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

  3. #3
    سلام
    تنها چیزی که می دونونیم این که درخت ما n تا گره داره
    تابعی که با دونستن n گره , تعداد درخت رو بده
    مثلا 1 گره 1 درخت
    2 گره 2 درخت
    3 گره 6 درخت و ...

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

  5. #5
    سلام
    قبلش از توجه هتون ممنون
    ولی صورت سوالی که من دارم اینه
    "تابعی به صورت بازگشتی بنویسید که تعداد درخت های موجود با
    N گره را پیدا کند"

    فکر نکنم منظور سوال استفاده از فرمول فوق باشه
    راستش رو بخواهید چند وقته روش فکر می کنم و خودم هم هنوز
    این که دقیقا چی میخواد ؛ نمی دونم

    کسی پیشنهاد دیگه ای نداره ممنون

  6. #6
    خب مگه بازگشتی نوشتنش کاری جز این داره:؟

    int f(int x){
    if(x==1)
    return 1;
    if(x%2==0)
    return 0;
    int ans=0;
    for(int i=1;i<x;i+=2)
    ans+=f(i)*f(x-1-i);
    return ans;
    }

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

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