Write a function that takes a string as input and returns the string reversed.
(Reference: https://leetcode.com/problems/reverse-string/)
Solution:
Let's take a couple of example to check the input and expected output of the given problem.
Example 1:
Input: "johny"
Output: "ynhoj"
Example 2:
Input: ""trump"
Output: "pmurt"
Solution 1:
Using String Builder:
public String reverseString(String s) {
if (s == null || s.length() <= 1) {
return s;
}
StringBuilder sb = new StringBuilder();
int len = s.length();
for(int i = 0; i < len; i++) {
sb.insert(0, s.charAt(i));
}
return sb.toString();
}
Solution 2:
Using character array:
public String reverseString(String s) {
if (s == null || s.length() <= 1) {
return s;
}
char[] arr = s.toCharArray();
for(int i = 0; i < arr.length/2; i++) {
char c = arr[i];
arr[i] = arr[arr.length-1-i];
arr[arr.length-1-i] = c;
}
return String.valueOf(arr);
}
Please do let me know your comments about this blog post.
Thanks. Happy Coding :)

