【牛客刷题】每日一练——回文字符串

简介: 【牛客刷题】每日一练——回文字符串

hello,点进来的小伙伴们,你们好呐!

系列专栏:【牛客刷题】

作者简介:一名双非本科的在读大三小白,我很平凡,学会努力!

一、验证回文字符串

编写程序,验证一个字符串是否为回文串:是否从前读它和从后读它都是一样的。

例如,mom,dad是回文串。该程序接收用户输入的字符串,判断是否为回文串,然后将判断的结果输出。

输入格式:

输入在一行中给出一个字符串。

输出格式:

如果输入的字符串为回文串,则输出yes;否则输出no。

输入样例:

在这里给出一组输入。例如:

mom

输出样例:

在这里给出相应的输出。例如:

yes

解题思路:这题我感觉用java语言实现比较方便,因为java自带的很多的功能函数,这题我们首先判断输入的字符串有无除了数字 字母之外的其他字符,然后把大写转换为小写字母(忽略大小写) ,最后通过reverse()方法反转字符串之后在比较即可!

   import java.util.Scanner;

   

   public class Main {

       public static void main(String[] args) {

           Scanner sc = new Scanner(System.in);

           String str = sc.nextLine();

           StringBuilder str1 = new StringBuilder();

           int len = str.length();

           for (int i = 0; i < len; i++) {

               char ch = str.charAt(i);

               //判断字符是否为字母字符和数字字符

               if(Character.isLetterOrDigit(ch)){

                   str1.append(Character.toLowerCase(ch));

               }

           }

           StringBuffer str2 = new StringBuffer(str1).reverse();

           if(str1.toString().equals(str2.toString())){

               System.out.println("yes");

           }

           else{

               System.out.println("no");

           }

       }

   }

相关文章
|
JavaScript 数据可视化
vue-cli学习二:vue-cli3版本 创建vue项目后,Runtime-Compiler和Runtime-only两个模式详解;vue项目管理器;配置文件的配置在哪,以及如何配置
这篇文章详细介绍了Vue CLI 3版本创建项目时的Runtime-Compiler和Runtime-only两种模式的区别、Vue程序的运行过程、render函数的使用、eslint的关闭方法,以及Vue CLI 2和3版本配置文件的不同和脚手架3版本创建项目的配置文件配置方法。
1050 3
vue-cli学习二:vue-cli3版本 创建vue项目后,Runtime-Compiler和Runtime-only两个模式详解;vue项目管理器;配置文件的配置在哪,以及如何配置
|
存储 Oracle 安全
揭秘Java并发核心:深入Hotspot源码腹地,彻底剖析Synchronized关键字的锁机制与实现奥秘!
【8月更文挑战第4天】在Java并发世界里,`Synchronized`如同导航明灯,确保多线程环境下的代码安全执行。它通过修饰方法或代码块实现独占访问。在Hotspot JVM中,`Synchronized`依靠对象监视器(Object Monitor)机制实现,利用对象头的Mark Word管理锁状态。
131 1
|
Java 程序员 调度
Java基础18-一文搞懂Java多线程使用方式、实现原理以及常见面试题(一)
Java基础18-一文搞懂Java多线程使用方式、实现原理以及常见面试题(一)
224 0
Java基础18-一文搞懂Java多线程使用方式、实现原理以及常见面试题(一)
|
Linux 程序员 Python
自动化办公更简单了!新版python-office,有哪些更新?
自动化办公更简单了!新版python-office,有哪些更新?
195 0
自动化办公更简单了!新版python-office,有哪些更新?
|
Web App开发 监控 前端开发
手把手带你入门前端工程化——超详细教程(四)
手把手带你入门前端工程化——超详细教程(四)
217 0
|
存储 自然语言处理
词法分析器的设计与实现
加深对词法分析器的工作过程的理解;加强对词法分析方法的掌握;能够采用一种编程语言实现简单的词法分析程序;能够使用自己编写的分析程序对简单的程序段进行词法分析。
323 0
|
弹性计算 NoSQL MongoDB
实例创建|学习笔记
快速学习实例创建
实例创建|学习笔记
|
存储 算法 网络架构
|
编译器 数据安全/隐私保护 C++
|
网络协议 Linux
linux查看3306端口号是否打开
linux查看3306端口号是否打开
603 0