Thursday, 7 January 2016

Recursion Based Program For Freshers

1)  For String Palindrome
====================


public class PalindromeRecursion 
{
    public static void main(String...args)
      {
        String inputString="aabaa";
        System.out.println(isPalindromeUsingRecursion(inputString) ? inputString+ " is a palindrome." :                                                            inputString+ "is not a palindrome.");     
    }
    

    /**
     * This methods finds out whether inputString is palindrome or not recursively.
     * Returns true if inputString is palindrome.
     */

    public static boolean isPalindromeUsingRecursion(String inputString)
      {
           if(inputString.length()==0 || inputString.length()==1)
           {
                  return true;
           }
           if(inputString.charAt(0)==inputString.charAt(inputString.length()-1))
           {
                  return isPalindromeUsingRecursion(inputString.substring(1,inputString.length()-1));
           }
    
    return false;
    }
}




2)  For Factorial of a Number
======================


public class FactorialRecursion {

    public static void main(String...args){ 

           int num=4; 

           System.out.println("Factorial of "+num+" is: "+findFactorail(num));     

    }
   
    public static int findFactorail(int num)
{
       if(num==0)
                  return 1;

           return num* findFactorail(num-1);
    }

}



3)  For reversing String

==================


public class ReverseStringRecursion {

    public static void main(String...args){ 

           String originalString="abcde"; //String to be reversed

           

           System.out.println("Original String: "+originalString);

           System.out.print("Reversed String: ");

           reverseRecursively(originalString);

    }

    public static void reverseRecursively(String str) {



           if (str.length() == 1){

                  System.out.print(str);

           }

           else {

                  reverseRecursively(str.substring(1, str.length()));

                  System.out.print(str.substring(0, 1));

           }

    }

}




4)  For Fibonacci Series

===================



public class FibonacciRecursion 
{
    public static void main(String...args) 
{

        int n = 10;     //generate series upto n.

        System.out.print("FibonacciSeries : 0 1 ");

        for(int i=2; i<=n; i++){

         System.out.print(fibonacciRecursion(i) +" ");

        }
    }

    /*

     * return next number of FibonacciSeries using recursion.

     */

    public static int fibonacciRecursion(int n){

        if(n == 1 || n == 2){

         return 1;

        }

        return fibonacciRecursion(n-1) + fibonacciRecursion(n-2); //using tail recursion

    }
}





5)  For Finding sum of digits in a number

================================



public class SumOfDigitsInNumberRecursion 

{

    public static void main(String...args)

       {
           int number=1234;  
           System.out.println("number     : "+number);
           System.out.println("sum of digits : "+sumOfDigitsUsingRecursion(number));  
     }   


    static int sum=0;

    public static int sumOfDigitsUsingRecursion(int number)

     {

           if(number == 0)

           {

               return sum;

            }

           else

            {

                sum = sum + (number%10);

                sumOfDigitsUsingRecursion(number/10);

            }

        return sum;

    }

}

2 comments:

  1. String s1= "DaddyMommy";
    int size = s1.length();
    System.out.println("size = "+size); // 10
    char charac = s1.charAt(0);
    System.out.println("character available = "+charac); // D
    String s2 = s1.substring(1,5);
    System.out.println("substring1 available = "+s2); // addy
    String s3 = s1.substring(1,size-1);
    System.out.println("substring2 available = "+s3); // addyMomm
    String s5 = s1.substring(1);
    System.out.println("substring4 available = "+s5); // addyMommy
    String s6 = s1.substring(5);
    System.out.println("substring5 available = "+s6); // Mommy
    String s7 = s1.substring(0);
    System.out.println("substring3 available = "+s7); // DaddyMommy
    String s8 = s1.substring(9);
    System.out.println("substring3 available = "+s8); // y
    String s4 = s1.substring(9,2);
    System.out.println("substring3 available = "+s4);
    // java.lang.StringIndexOutOfBoundsException: String index out of range: -7

    ReplyDelete

JSP interview questions and answers

Q1. What is JSP and why do we need it? JSP stands for JavaServer Pages. JSP is java server side technology to create dynamic web pages. J...