请编写一个函数,其功能是将输入的字符串反转过来。
示例:
输入:s = "hello" 返回:"olleh"
C语言
Java 语言
#include<stdio.h> #include<string.h> void reversestr(char *str,int n){ int i=0,j=n-1; while(i<j){ char tmp = str[i]; str[i] = str[j]; str[j] = tmp; i++; j--; } } int main(){ char str[] = "hello"; printf("%s\n",str); reversestr(str,5); printf("%s\n",str); return 0; }
Java 语言
public class Solution { public String reverseString(String s){ char[] chars = s.toCharArray(); StringBuffer sb = new StringBuffer(); for(int i=chars.length-1;i>=0;i--){ sb.append(chars[i]); } return sb.toString(); } //前后互换 public String reverseString1(String s){ char[] chars = s.toCharArray(); int length = chars.length-1; int num = chars.length/2; for(int i=0;i<num;i++){ char tmp = chars[i]; chars[i] = chars[length-i]; chars[length-i] = tmp; } return new String(chars); } //前后互换一些优化 public String reverseString2(String s){ char[] chars = s.toCharArray(); int i=0,j= chars.length-1; while(i<j){ char tmp = chars[i]; chars[i] = chars[j]; chars[j] = tmp; i++; j--; } return new String(chars); } //java api public String reverseString3(String s){ return new StringBuilder(s).reverse().toString(); } public static void main(String[] args) { Solution solution = new Solution(); System.out.println(solution.reverseString3("abcdef")); } }