344. Reverse String
Write a function that takes a string as input and returns the string reversed.
Example:
Given s = "hello", return "olleh".
C语言很容易用指针实现,用for循环将内容复制进新数组,然后末尾补\0
char* reverseString(char* s) { char* s_rev; int i,len=strlen(s); for(i=0 ; i<len ; i++) s_rev[i] = s[len-i-1]; s_rev[len] = '\0'; return s_rev; }
刚学Java,试试。先toCharArray将字符串转为字符数组,再建立StringBuffer,for循环在buffer中每次添加一个字符,最后StringBuffer用toString转为String输出
这样做会很慢
public class Solution { public String reverseString(String s) { char[] cha = s.toCharArray(); StringBuffer str_buf = new StringBuffer(); for(int i=cha.length-1 ; i>=0 ; i--) str_buf.append(cha[i]); return str_buf.toString(); } }
public class Solution { public String reverseString(String s) { return new StringBuilder(s).reverse().toString(); } }
附上链接,Java中字符串反转的七种方法