编写程序判断一个字符串是否为回文字符串(如:abcba,123321都是回文字符串)。
时间: 2024-10-12 07:11:44 浏览: 16
判断一个字符串是否为回文字符串,通常可以采用双指针法,从字符串的两端开始向中间移动,比较对应位置的字符是否相等。如果所有的字符都匹配,则该字符串是回文。
以下是使用Java编写的简单示例:
```java
public class Main {
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; // 如果任意一对字符不相等,返回false
}
left++;
right--;
}
return true; // 遍历完所有字符仍相等,说明是回文字符串
}
public static void main(String[] args) {
String str1 = "abcba";
String str2 = "123321";
System.out.println(isPalindrome(str1)); // 输出:true
System.out.println(isPalindrome(str2)); // 输出:true
String notPalindromic = "hello";
System.out.println(isPalindrome(notPalindromic)); // 输出:false
}
}
```
在上述代码中,`isPalindrome`函数接收一个字符串作为输入,检查并返回它是否为回文。如果`left`和`right`指针相遇或交叉,说明已经检查过整个字符串且字符都相等,那么就是回文;反之则不是。
阅读全文