欢迎访问宙启技术站
智能推送

Java函数:如何实现字符串的反转和旋转?

发布时间:2023-06-22 16:41:20

反转字符串:

实现字符串反转的算法比较简单,可以通过遍历字符串的每一个字符,并将其存储到一个新的字符串中,最终得到反转后的字符串。下面是Java代码实现:

public static String reverseString(String str) {
    String reversedStr = "";
    for (int i = str.length() - 1; i >= 0; i--) {
        reversedStr += str.charAt(i);
    }
    return reversedStr;
}

旋转字符串:

实现字符串旋转的算法需要掌握几个关键点:

- 将字符串分为两部分,分别是左半部分和右半部分。

- 将左半部分和右半部分反转。

- 将整个字符串反转。

下面是Java代码实现:

public static String rotateString(String str, int k) {
    int len = str.length();
    k %= len;
    char[] charArray = str.toCharArray();
    reverse(charArray, 0, len - 1);
    reverse(charArray, 0, k - 1);
    reverse(charArray, k, len - 1);
    return new String(charArray);
}

private static void reverse(char[] charArray, int start, int end) {
    while (start < end) {
        char temp = charArray[start];
        charArray[start++] = charArray[end];
        charArray[end--] = temp;
    }
}

这里我们将字符串转换为字符数组,然后对字符数组进行反转操作。在反转左半部分和右半部分时,我们分别使用了reverse方法。最后再将整个字符数组反转,得到旋转后的字符串。