📅  最后修改于: 2023-12-03 14:47:53.036000             🧑  作者: Mango
这是一道 TCS 编码练习题,要求实现一个函数来反转字符串,具体要求如下:
双指针法是最常用的字符串反转方法之一,指针分别从字符串首、尾开始向中间移动,交换对应位置的字符。
public static String reverseString(String str) {
if (str == null || str.length() < 2) {
return str;
}
char[] chars = str.toCharArray();
int left = 0, right = chars.length - 1;
while (left < right) {
char temp = chars[left];
chars[left] = chars[right];
chars[right] = temp;
left++;
right--;
}
return new String(chars);
}
StringBuilder 是一个可变的字符串类,它提供了 reverse 方法来实现字符串反转功能。
public static String reverseString(String str) {
if (str == null || str.isEmpty()) {
return str;
}
return new StringBuilder(str).reverse().toString();
}
本文介绍了两种常用的反转字符串方法——双指针法和使用 StringBuilder 类的 reverse 方法。这里的代码示例均为 Java 语言,但是这两种方法在其它编程语言中也同样适用。对于这种简单的编程题目,我们需要尽可能多地应用不同的解法,并比较其性能和效果,以便选择最佳的方案。