按照题意理解即可
题目描述
给定一个非空字符串 s
,最多删除一个字符。判断是否能成为回文字符串。
示例 1:
输入: s = “aba”
输出: true
示例 2:
输入: s = “abca”
输出: true
解释: 你可以删除c字符。
示例 3:
输入: s = “abc”
输出: false
思路
题目中给定的条件是,最多删除一个字符,判断是不是回文串;
先正常判断s是不是回文串,然后当遇到第一对不一样的字符串时,去掉左边判断是否是回文串,再去掉右边再判断是不是回文串
如果有一个是,那就是成立的,如果去掉左边和去掉右边判断都不是回文串,那就不满足题意,返回false
即可
代码
Java
1 | public boolean isPalindrome(String s, int i, int j) { |