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

نام تاپیک: مشکل با آرایه های خیلی بزرگ

  1. #1
    کاربر جدید
    تاریخ عضویت
    شهریور 1387
    محل زندگی
    ایران
    پست
    19

    مشکل با آرایه های خیلی بزرگ

    سلام
    من یه آرایه دارم که با این آرایه یه درخت Bst ایجاد می کنم و اون درخت رو تو یه آرایه دیگه ذخیره می کنم . واسه اینکه یه Bst رو تو یه آرایه ذخیره کنیم مثلا اگه پدر تو خونه i قرار داره باید فرزند چپش توخونه 2*i و فرزند راستش تو خونه
    i*2+1 باشه و از اونجا که این درخت موازنه شده نیست طول آرایه دوم خیلی بیشتر از طول آرایه اول میشه و چون اندیس آرایه فقط می تونه عدد باشه اگه آرایه اولم تعداد عناصرش زیاد باشه ممکنه در ساخت آرایه درخت مشکل ایجاد بشه مثلا وقتی آرایه اولم 800 تا عنصر داشته باشه ارور 'System.OutOfMemoryException' ایجاد میشه
    البته این ارور طبیعیه چون در بدترین حالت با این 800 تا عنصر ما یه درخت خواهیم داشت که 800 سطح داره و در هر سطحی فقط یه عنصر غیر null یعنی یه درخت که باید 2 به توان 800 منهای یک گره رو براش ذخیره کرد که فقط 800 تا از اونها null نیستن(که این مقدار از محدوده اعداد صحیح خیلی بیشتر میشه)
    حالا سوال من اینه که چطور می تونم با حفظ این ساختار یه درخت خیلی بزرگ رو ذخیره کنم ؟؟؟


  2. #2
    کاربر دائمی آواتار keivan mousavi
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    همه جای ایران سرای من است
    پست
    360

    نقل قول: مشکل با آرایه های خیلی بزرگ

    دوست عزيز فكر كنم متد params جواب كارتو بده

  3. #3
    کاربر جدید
    تاریخ عضویت
    شهریور 1387
    محل زندگی
    ایران
    پست
    19

    نقل قول: مشکل با آرایه های خیلی بزرگ

    ممنون از جوابتون
    اما من خیلی سی شارپ بلد نیستم
    میشه خواهش کنم بیشتر توضیح بدین
    یعنی باید چی کار کنم ؟؟؟

  4. #4
    کاربر دائمی آواتار keivan mousavi
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    همه جای ایران سرای من است
    پست
    360

    نقل قول: مشکل با آرایه های خیلی بزرگ


    public void sale(params int a)
    {
    //تعريف نوع آرايه
    }

  5. #5
    کاربر جدید
    تاریخ عضویت
    شهریور 1387
    محل زندگی
    ایران
    پست
    19

    نقل قول: مشکل با آرایه های خیلی بزرگ

    فکر کنم گیراییم ضعیف شده
    ببینید من یه کلاس دارم که آرایه اول و آرایه درختم باید به صورت فیلد های عمومی داخلش تعریف بشه تو این کلاس یه متد Bst هم هست که از آرایه اول استفاده میکنه درخت رو ایجاد میکنه و تو آرایه دوم می ریزه(که مشکل من با آرایه دومه) چون بقیه متد های این کلاس هم از این دوتا آرایه استفاده می کنن فکر کنم تعریفشون به اون شکلی که شما گفتین مشکل ساز بشه !؟
    اصلا میشه توضیح بدین این کلمه چی کار می کنه ؟؟؟ آخه تو کتابی که من دارم چیزای خوبی واسه params نگفته!!!

  6. #6
    کاربر دائمی آواتار keivan mousavi
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    همه جای ایران سرای من است
    پست
    360

    نقل قول: مشکل با آرایه های خیلی بزرگ

    اصلا میشه توضیح بدین این کلمه چی کار می کنه ؟؟؟ آخه تو کتابی که من دارم چیزای خوبی واسه params نگفته!!!
    دقيقاً توي هيچ كتابي در اين باره بحث نشده من توي يكي از DVD هاي آموزشي قديمي اين مطلبو ديدم فقط ميدونم اين كار به شما كمك ميكنه يك كلاس براي آرابه تون تعريف كنيد و اگر آرايه شما خيلي بزرگ بود در اونجا مديريت استثنا كنيد

    من فكر كنم اگه آرايه رو به صورت عدد بگيريد و به صورت طول رشته اي ذخيرع كنيد مشكلتون حل بشه

  7. #7
    کاربر جدید
    تاریخ عضویت
    شهریور 1387
    محل زندگی
    ایران
    پست
    19

    نقل قول: مشکل با آرایه های خیلی بزرگ

    مشکل اینجاست که عناصر هر دو آرایه من عناصر ساده مثل عدد یا رشته نیستن و نمی تونم تبدیلشون کنم هر کدومشون یه استراکت هستن که فیلد های این استراکت ها هم باز ساده نیستن... یعنی یه ساختار تا حدودی پیچیده
    در هر صورت از راهنمایی هاتون ممنون

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

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