CodeGym /جاوا بلاگ /Random-SD /جاوا ورجائي
John Squirrels
سطح
San Francisco

جاوا ورجائي

گروپ ۾ شايع ٿيل

Java Recursion ڇا آهي؟

اهو منظر جنهن ۾ هڪ فنڪشن يا طريقو پاڻ کي سڏيندو آهي recursion طور سڃاتو وڃي ٿو ۽ اهڙي فنڪشن يا طريقو هڪ recursive فنڪشن يا recursive طريقو طور سڃاتو وڃي ٿو. اهو طريقو هميشه پيچيده مسئلن کي هڪ سادي ۽ آسان لکڻ ۾ ٽوڙڻ لاء استعمال ڪيو ويندو آهي. هڪ سادو مثال آهي ٻه آئينا هڪ ​​ٻئي جي سامهون رکڻ ۽ اهي هڪ ٻئي کي بار بار عڪاسي ڪرڻ شروع ڪندا جنهن کي توهان آساني سان ڏسي سگهو ٿا.

اڻ سڌي طرح ورجائي

مٿي ڏنل مثال اڻ سڌي ريٽرن جي نمائندگي ڪري ٿو ، يعني فنڪشن هڪ ڪالنگ فنڪشن ٻه ۽ فنڪشن ٻه ڪالنگ فنڪشن هڪ.

سڌو سنئون ورجائي

جڏهن ڪو طريقو پاڻ کي بار بار سڏيندو آهي، ان کي سڏيو ويندو آهي سڌو ٻيهر ورجائي .

روڪڻ جي حالت

هاڻي توهان سوچيو هوندو ته جيڪڏهن ڪو طريقو پاڻ کي بار بار سڏي رهيو آهي ته پوءِ پڪ سان ان کي منهن ڏيڻو پوندو اسٽيڪ اوور فلو غلطي . ها، توهان صحيح آهيو، لامحدود لوپنگ وانگر اهو هڪ لامحدود ورهاڱي ۾ وڃي سگهي ٿو. هن لامحدود ورهاڱي کي روڪڻ لاءِ اسان کي بنيادي شرط يا ختم ٿيڻ واري شرط مهيا ڪرڻ گهرجي ، جنهن کي هٽائڻ واري حالت طور سڃاتو وڃي ٿو، ۽ اها حالت هميشه ريٽرن جي طريقي جي اندر مهيا ڪئي وئي آهي، جنهن کي اسين هيٺ ڏنل مثال ۾ تفصيل سان ڏسندا.

ورجائي مثال

class Recursion {

    static int factorial( int n ) {
        // base condition or termination condition
        if (n != 0)
        // here we are calling the recursive method
            return n * factorial(n-1);
        else
            return 1;
    }

    public static void main(String[] args) {
        // initializing the variables
        int number = 5, result;
        result = factorial(number);
        System.out.println(number + " factorial = " + result);

        // changing the value from 5 to 10
        number = 10;
        result = factorial(number); // recursive function call
        System.out.println(number + " factorial = " + result);
    }
}

مثال جي پيداوار

5 فيڪٽري = 120 10 فيڪٽري = 3628800
هن recurse طريقي جي مثال ۾ اسان وٽ هڪ فنڪشن فيڪٽري آهي جنهن کي مين ميٿڊ مان سڏيو ويندو آهي. اسان 5 جي هڪ قدر کي پاس ڪيو ته ڏسو ته ان جو فيڪٽري ڇا آهي، جيڪو 120 آهي. اهو فيڪٽري فنڪشن 4 جي قيمت کي پاس ڪندي پاڻ کي ٻيهر سڏيندو آهي، جيڪو ٻيهر ڪال ڪري ٿو ۽ 3 جي قيمت کي پاس ڪري ٿو، ۽ ائين ئي، جيستائين halting حالت آهي. met، جيڪا 0 جي قيمت آهي. ساڳيو ئي ٿيندو جڏهن اسان قيمت 5 کان 10 کي تبديل ڪيو.

ورهاڱي جا فائدا ۽ نقصان

هڪ ٻيهر ورجائيندڙ ڪوڊ لکڻ، ڊيبگ ڪرڻ، ۽ برقرار رکڻ لاء آسان آهي، جيڪو وقت بچائيندو آهي. پر ٻئي طرف، هر ڪال سان ميموري متغير لاء استعمال ڪئي ويندي آهي، ۽ ان جي ڪري اسان جي ياداشت ختم ٿي سگهي ٿي.

نتيجو

اسان اميد ٿا ڪيون ته توھان سمجھندا ھوندا جاوا ريڪرشن ۽ ان کي ڪيئن لاڳو ڪجي، ان سان گڏوگڏ ان جا فائدا ۽ نقصان. مشق ڪرڻ لاء آزاد محسوس ڪريو ۽ واپس وڃو جڏهن توهان کي وڌيڪ مدد جي ضرورت آهي. خوش تعليم!
تبصرا
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION