用java编写判断回文字符串的程序,程序中要求使用了两种算法来判断回文字符串算法一:分别从前向后和从后向前依次获得原串str的一个字符ch1、ch2,比较ch1和ch2,如果不相等,则str肯定不是回文串,yes=false,立即退出循环:否则继续比较,直到字符全部比较完,yes的值仍为true,才能肯定str是回文串。 算法二:将原串str反转成temp串,再比较两串,如果相等则是因文字符串。
时间: 2023-11-14 13:06:07 浏览: 95
python简单算法04:判断一个字符串是否为回文串的排列之一
好的,下面是使用Java编写的判断回文字符串的程序,包括了两种算法:
```java
import java.util.Scanner;
public class Palindrome {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("请输入字符串:");
String str = input.nextLine();
boolean isPalindrome1 = true;
for (int i = 0; i < str.length() / 2; i++) {
if (str.charAt(i) != str.charAt(str.length() - i - 1)) {
isPalindrome1 = false;
break;
}
}
boolean isPalindrome2 = str.equals(new StringBuilder(str).reverse().toString());
System.out.println("算法一判断结果:" + isPalindrome1);
System.out.println("算法二判断结果:" + isPalindrome2);
}
}
```
程序中使用了Scanner类来获取用户输入的字符串。第一个算法使用了for循环,从字符串的首尾开始比较,如果发现不相等的字符,就将isPalindrome1设为false并跳出循环。第二个算法使用了StringBuilder类将字符串反转,然后再和原字符串比较是否相等。最后输出两种算法的判断结果。
阅读全文