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

نام تاپیک: چرا مقدار متغیر حفظ نمی شه

Threaded View

پست قبلی پست قبلی   پست بعدی پست بعدی
  1. #1

    چرا مقدار متغیر حفظ نمی شه

    سلام

    این یه تابعه که می خواد تعداد عناصری که توی یک آرایه به ترتیب بر عکس قرار دارند را پیدا کنه. حالا هدفش خیلی مهم نیست. لطفا این کد رو ببینین:


    private void findInversions(int begin, int end, int count) {
    if (end - begin < 1)
    return;
    int middle = (begin + end) / 2;
    findInversions(begin, middle, count);
    System.out.println("count: " + count + " CHERA????");
    findInversions(middle + 1, end, count);
    count = mergeAndCount(begin, middle, end, count);
    }










    private int mergeAndCount(int begin, int middle, int end, int count) {


    int[] result = new int[end - begin + 1];
    int aptr = begin;
    int bptr = middle + 1;
    for (int i = 0; i < result.length; i++) {
    if (aptr <= middle && bptr <= end) {
    if (numbers[aptr] < numbers[bptr]) {
    result[i] = numbers[aptr];
    aptr++;
    }
    else {
    // (a[aptr], b[bptr]) is an inversion here
    count++;
    System.out.println("PAYDA SHOD: (" + numbers[aptr] + "," + numbers[bptr] + "). VALI COUNT MEGHDARESH GHALATE: " + count);
    result[i] = numbers[bptr];
    bptr++;
    }
    }
    else if (aptr > middle) {
    result[i] = numbers[bptr];
    bptr++;
    }
    else if (bptr > end) {
    result[i] = numbers[aptr];
    aptr++;
    }


    }


    for (int i = 0; i < result.length; i++) {
    numbers[begin + i] = result[i];
    }


    return count;


    }



    من هم خود count رو به عنوان آرگومان پاس می دم و هم returnش می کنم. با توجه به این که جاوا خود اصل متغیر رو تغییر می ده (مگه نه؟) چرا مقدار count وقتی از اجراهای مختلف تابع بازگشتی بیرون می یایم همون مقدار قبلیشه و تغییر نکرده؟

    ممنون



    ویرایش: دوستان من از یکی از دوستام سوال کردم و ظاهرا اشتباه می کردم و int چون primitiveه کپی می شه و اصلش عوض نمی شه. ولی من نوع count رو به Integer هم تغییر دادم درست نشد. لطفا راهنمایی کنین.
    آخرین ویرایش به وسیله barnamenevis8 : یک شنبه 19 اردیبهشت 1395 در 19:39 عصر دلیل: توضیح بیشتر

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

  1. لطفا یکی ببینه چرا این کد اجر نمی شه ؟؟
    نوشته شده توسط mohammad_amini در بخش PHP
    پاسخ: 5
    آخرین پست: یک شنبه 05 آبان 1392, 15:55 عصر
  2. چرا پیج من باز نمی شه
    نوشته شده توسط qhoqnose در بخش ASP.NET Web Forms
    پاسخ: 9
    آخرین پست: شنبه 21 بهمن 1391, 09:40 صبح
  3. چرا کدهای من اجرا نمی شه
    نوشته شده توسط thinking21 در بخش CakePHP
    پاسخ: 11
    آخرین پست: چهارشنبه 24 شهریور 1389, 16:41 عصر
  4. چرا اطلاعات وارد دیتابیس نمی شه(eror در objConnection.Open)
    نوشته شده توسط reza1078 در بخش ASP.NET Web Forms
    پاسخ: 12
    آخرین پست: یک شنبه 21 تیر 1388, 14:21 عصر
  5. چرا مقدار یک متغیر استاتیک از بین می ره؟
    نوشته شده توسط elham.net در بخش C#‎‎
    پاسخ: 5
    آخرین پست: دوشنبه 11 دی 1385, 10:20 صبح

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

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