要求:将String型字符串反转
注意:思路是将String放入数组中,在进行反转,时间复杂度为O(n/2)
如果将字符串放入String型数组中,最后需要使用append方法将String型数组中的元素连接成一个字符串,实际验证时候发现时间超出范围。所以这里将字符串变成char,最后直接用new String(arr)就能转化为字符串。
要记得判断特殊情况,例如输入的字符串为" "
public static String reverseString(String s) {
int l = s.length();
if (l == 0)
return "";
char tmp;
char[] arr = s.toCharArray();
for (int i = 0; i < l / 2; i++) {
tmp = arr[i];
arr[i] = arr[l - 1 - i];
arr[l - 1 - i] = tmp;
}
String result = new String(arr);
return result;
}