共计 767 个字符,预计需要花费 2 分钟才能阅读完成。
反转字符串
题目形容:编写一个函数,其作用是将输出的字符串反转过去。输出字符串以字符数组 char[] 的模式给出。
不要给另外的数组调配额定的空间,你必须原地批改输出数组、应用 O(1) 的额定空间解决这一问题。
你能够假如数组中的所有字符都是 ASCII 码表中的可打印字符。
示例阐明请见 LeetCode 官网。
起源:力扣(LeetCode)
链接:https://leetcode-cn.com/probl…
著作权归领扣网络所有。商业转载请分割官网受权,非商业转载请注明出处。
解法一:数组遍历
遍历 s,遍历程序是
0~s.length/2
,将第i
项的值和第s.length-1-i
项的值进行替换。遍历实现后的 s 即为反转后的字符串。
public class LeetCode_344 {public static void reverseString(char[] s) {for (int i = 0; i < s.length / 2; i++) {
// 第 i 项和第 s.length-1- i 项进行替换
char temp = s[i];
s[i] = s[s.length - 1 - i];
s[s.length - 1 - i] = temp;
}
}
public static void main(String[] args) {char[] s = new char[]{'h', 'e', 'l', 'l', 'o'};
System.out.println("----- 反转之前 -----");
for (char c : s) {System.out.print(c + " ");
}
System.out.println();
reverseString(s);
System.out.println("----- 反转之后 -----");
for (char c : s) {System.out.print(c + " ");
}
}
}
【每日寄语】每一次的冲破都是为了成就更好的本人。
正文完