【发布时间】:2020-03-07 17:15:14
【问题描述】:
编写一个反转字符串的函数。输入字符串以字符数组 char[] 的形式给出。
不要为另一个数组分配额外的空间,您必须通过使用 O(1) 额外内存就地修改输入数组来做到这一点。
您可以假设所有字符都由可打印的 ascii 字符组成。
示例 1:
输入:["h","e","l","l","o"] 输出:["o","l","l","e","h"]
class Solution {
public void reverseString(char[] s) {
for(int i=0; i<s.length/2; i++){
for(int j=s.length-1; j>i; j--){
char temp = s[j];
s[j] = s[i];
s[i] = temp;
}
}
}
}
输入:["h","e","l","l","o"]
我的输出["e","l","o","h","l"]
预期:["o","l","l","e","h"]
谁能告诉我哪里错了。
【问题讨论】:
-
如果您使用调试器逐步完成此操作,您会很快发现您的错误是什么。
-
你只需要一个循环。
标签: java arrays string algorithm