蓝桥与力扣刷题(蓝桥 回文判定)
题目:
给定一个长度为 n 的字符串 S。请你判断字符串 S 是否回文。
输入描述
输入仅 1 行包含一个字符串 S。
1≤∣S∣≤106,保证 S 只包含大小写、字母。
输出描述
若字符串 S 为回文串,则输出 Y,否则输出 N。
输入输出样例
示例 1
输入
abcba
输出
Y
示例 2
输入
abcbb
输出
N
解题思路+代码:
代码:
import java.util.Scanner;
// 1:无需package
// 2: 类名必须Main, 不可修改
public class Main {
public static void main(String[] args) {
//判断 从左到右遍历 和 从右到左遍历 是否相同
Scanner scan = new Scanner(System.in);
String arr = scan.nextLine();
char[] ch = arr.toCharArray(); //[a,b,c,b,a] [a,b,c,b,b]
boolean flag = true;
for(int i = 0; i<ch.length / 2; i++){
//判断 字符串的左边 和 字符串的右边 是否相同
if(ch[i] != ch[ch.length - 1 - i]){
flag = false; //不同赋值false
break;
}
}
//判断flag后对应输出
if(flag){
System.out.println("Y");
}else{
System.out.println("N");
}
scan.close();
}
}
总结:一道简单的回文字符判断题,回文即从中间开始,(对字符串的左边和右边进行遍历)字符串的左边与右边完全相同时是回文(注意:所有字符都相同时也是回文)。