美文网首页
PIPI:1000: 回文串问题简单办法实现(Java)

PIPI:1000: 回文串问题简单办法实现(Java)

作者: 天降小纸箱 | 来源:发表于2021-01-13 19:06 被阅读0次

题目描述:1000: 回文串问题
“回文串”是一个正读和反读都一样的字符串,字符串由数字和小写字母组成,比如“level”或者“abcdcba”等等就是回文串。请写一个程序判断读入的字符串是否是“回文”。
输入:输入包含多个测试实例,每一行对应一个字符串,串长最多100字母。
输出: 对每个字符串,输出它是第几个,如第一个输出为"case1: ";如果一个字符串是回文串,则输出"yes",否则输出"no",在yes/no之前用一个空格。

image.png

实现思路:从第一个开始,依次对比收尾字符是否相同即可;
在PIPIOJ上使用Java运行时,使用 inScanner.hasNext()判断持续输入可正确执行

代码实现

public class Palindrome {
    public static void main(String[] args) {
        Scanner inScanner = new Scanner(System.in);
        int cnt = 1;
        String string,showString = "case";
        while (inScanner.hasNext()) {
            string = inScanner.nextLine();
            if (null != string && string.length() > 0) {
                showString = showString + cnt + ": ";
                showString = isPalindrome(string) ? showString + "yes" : showString + "no";
                System.out.println(showString);
                cnt++;
                showString = "case";
            }
        }

    }

    /**
     * 判断是否回文字符串
     * @param string
     * @return
     */
    public static boolean isPalindrome(String string) {
        int len = string.length();
        int mid = len / 2;
        for (int i = 0; i <= mid; i++) { // 直接两边调用依次对比即可
            if (string.charAt(i) != string.charAt(len - i - 1)) {
                return false;
            }
        }
        return true;
    }
}

相关文章

  • PIPI:1000: 回文串问题简单办法实现(Java)

    题目描述:1000: 回文串问题[http://www.pipioj.online/problem.php?id=...

  • leetcode131 分割回文串

    题目 分割回文串 分析 简单dfs问题,关键点在于如何快速的判断回文串。这里我们就可以预先找出所有的回文串,再每次...

  • Lintcode-最长回文子串

    问题描述: 给出一个字符串(假设长度最长为1000),求出它的最长回文子串,你可以假定只有一个满足条件的最长回文串...

  • leetcode005-最长回文子串

    问题描述 给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。 回文就是正读和...

  • 最长回文子串

    最长回文子串——Manacher 算法 1. 问题定义 最长回文字符串问题:给定一个字符串,求它的最长回文子串长度...

  • 最长回文子串

    最长回文子串 给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为1000。

  • 最长回文子串问题—Manacher算法

    最长回文串问题是一个经典的算法题。 0. 问题定义 最长回文子串问题:给定一个字符串,求它的最长回文子串长度。如果...

  • 最长回文子串杀器-马拉车算法 2020-09-07(未允禁转)

    1.求解最长回文子串 在之前博客中提到解决回文串问题时,是利用了大回文串 = 小回文串向两头扩展的性质得到状态转移...

  • LeetCode练手系列——最长回文子串

    题目:最长回文子串 给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为1000。 示例 ...

  • 最长回文子串

    最长回文子串 给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。 分析:参考...

网友评论

      本文标题:PIPI:1000: 回文串问题简单办法实现(Java)

      本文链接:https://www.haomeiwen.com/subject/vdtbaktx.html