I am trying to split the string into three parts and print each part backwards. So when the user enters "HelloWorld" it should print "dlroWolleH". I don't know where i am wrong, it flips like pair.
import java.util.*;
public class recursion
{
public static void main(String args[])
{
Scanner scanner = new Scanner (System.in);
System.out.print("Enter a string: ");
String str = sc.nextLine();
System.out.print(revRec3(str));
}
public static String revRec3(String str)
{
if ((str.length() == 1)|| (str.length()==0 || str.length()==2))
{
return str;
}
String left = str.substring(0, (str.length() / 3)),
middle = str.substring((str.length()/3) ,(str.length()-left.length())),
right = str.substring((str.length()-middle.length()),str.length());
String revLeft = revRec3(left);
String revMiddle = revRec3(middle);
String revRight = revRec3(right);
return revRight + revMiddle + revLeft;
}
}