Strings Reversal
First Lets looks at how can we reverse a String in Java. We can do it two ways- Iterative way
- Recursive way
/** * Created with IntelliJ IDEA. * User: aniket * Date: 20/12/13 * Time: 2:53 PM */ public class StringReverser { public static String iterativeReverse(String originalString){ char[] originalStringCharacterArray = originalString.toCharArray(); StringBuilder reversedString = new StringBuilder(); for(int i=originalString.length()-1;i>=0;i--){ reversedString.append(originalStringCharacterArray[i]); } return reversedString.toString(); } public static String recursiveReverse(String originalString){ if(originalString.length() == 1){ return originalString; } else { return recursiveReverse(originalString.substring(1)) + originalString.charAt(0); } } public static void main(String args[]){ String originalString = "abcdef"; System.out.println("Revered String by iterative way is : " + StringReverser.iterativeReverse(originalString)); System.out.println("Revered String by iterative way is : " + StringReverser.recursiveReverse(originalString)); // For Palindrome simply reverse the String and use .equals() } }Output :
Revered String by iterative way is : fedcba
Revered String by iterative way is : fedcba
For Palindrome you can simply use the above code to get the reversed String and check both using String's .equals() method.
Integer Reversal
Integers reversal is again very easy. You simply should know proper use of % and / operators.
/**
* Created with IntelliJ IDEA.
* User: aniket
* Date: 20/12/13
* Time: 4:45 PM
*/
public class NumberReverser {
public static int reverseNumber(int number){
int reverse = 0;
while(number != 0){
reverse = (reverse*10) + (number%10);
number = number/10;
}
return reverse;
}
public static void main(String args[]){
System.out.printf("Reverse of number 1234 is : " + NumberReverser.reverseNumber(1234));
}
}
Output : Reverse of number 1234 is : 4321
No comments:
Post a Comment