入门算法 反转字符串(java)
对于这个算法我的想法是先将要反转的字符串先处理成char类型数组,这样便于我们调整字符串的顺序,对于其他字符串顺序的处理也可以先这样做。
之后因为我们需要调换char类型数组的顺序,这里有两种方式。
第一种是使用java中String类型自带的charAt函数,该函数作用是返回其查询位置的char类型(个人理解),通过这种方式的话也可以不必转换成char类型数组。
第二种方式是通过一个中介比如代码重的temp来进行数组的调换,和排序数组时方法类似。
方法1:
//
public String solve (String str) {
// write code here
char[] c = new char[str.length()];
for(int i = 0 ; i < str.length(); i ++){
c[i] = str.charAt(str.length() - i - 1);
}
return new String(c);
}
方法2:
public String solve (String str) {
// write code here
char[] c = str.toCharArray();
char temp ;
int len = str.length();
for(int i = 0 ; i < len/2; i ++){//因为是调换,所以只需要调换一半就行
temp = c[len - i - 1];
c[len - i - 1] = c[i];
c[i] = temp;
}
return new String(c);
}