请实现一个算法,在不使用额外数据结构和储存空间的情况下,翻转一个给定的字符串(可以使用单个过程变量)。
给定一个string iniString,请返回一个string,为翻转后的字符串。保证字符串的长度小于等于5000。
测试样例:
"This is nowcoder"
返回:"redocwon si sihT"
Java中的String创建后就引用一个常量,这和C字符串有区别,可以用StringBuffer。
1 import java.util.*; 2 3 public class Reverse { 4 public String reverseString(String iniString) { 5 // write code here 6 int len = iniString.length(); 7 StringBuffer sb = new StringBuffer(iniString); 8 for(int i = 0 , j = len -1;i < j ;++i ,--j) 9 { 10 char tem = sb.charAt(i); 11 sb.setCharAt(i, sb.charAt(j)); 12 sb.setCharAt(j, tem); 13 } 14 return sb.toString(); 15 } 16 }