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

Java函数实现判断字符串是否为回文字符串

发布时间:2023-11-29 16:17:33

一个字符串是回文字符串指的是该字符串从左到右读和从右到左读都是一样的。例如,"level"和"racecar"都是回文字符串。

要判断一个字符串是否为回文字符串,可以使用以下的Java函数实现:

public static boolean isPalindrome(String str) {
    // 使用两个指针,一个指向字符串的起始位置,一个指向字符串的末尾位置
    int left = 0;
    int right = str.length() - 1;

    // 循环判断两个指针所指向的字符是否相等
    while (left < right) {
        // 如果两个指针所指向的字符不相等,则该字符串不是回文字符串
        if (str.charAt(left) != str.charAt(right)) {
            return false;
        }

        // 更新指针位置
        left++;
        right--;
    }

    // 如果循环结束后没有返回false,说明该字符串是回文字符串
    return true;
}

在该函数中,我们使用两个指针leftright来分别指向字符串的起始位置和末尾位置。然后,我们通过循环判断两个指针所指向的字符是否相等,如果不相等则返回false,否则继续循环直到left大于等于right。如果循环结束后没有返回false,则说明该字符串是回文字符串,返回true

该函数的时间复杂度是O(n),其中n是字符串的长度。