LeetCode64|茴香豆???

烂漫一生 提交于 2021-02-17 05:32:03

1,问题简述


给定一个非空字符串 s,最多删除一个字符。

判断是否能成为回文字符串。


2,示例

示例 1:
输入: "aba"输出: True示例 2:
输入: "abca"输出: True解释: 你可以删除c字符。注意:
字符串只包含从 a-z 的小写字母。字符串的最大长度是50000。

3,题解思路

回文字符串的使用


4,题解程序


public class ValidPalindromeTest { public static void main(String[] args) { String str="abca"; boolean validPalindrome = validPalindrome(str); System.out.println("validPalindrome = " + validPalindrome); }
public static boolean validPalindrome(String s) { char[] chars = s.toCharArray(); int i = 0; int j = chars.length - 1; while (i < j) { if (chars[i] != chars[j]) { return isPalindrome(chars, i + 1, j) || isPalindrome(chars, i, j - 1); } i++; j--; } return true; }
private static boolean isPalindrome(char[] chars, int i, int j) { while (i < j) { if (chars[i++] != chars[j--]) { return false; } } return true; }
}

5,题解程序图片版

6,总结

回文字符串的使用


7,  凑字数

曾经我会后悔自己有些事情没有去做,但是随着自己对自己的一通分析,觉得自己本身还是有一些优点的,后悔有用吗?就这样一步步问自己,经过读书的理解,自己慢慢明白了一个道理,人生走的每一步都算数。很久之前的文章就给与了自己这句话,急功近利,欲速则不达,找好自己的人生路,慢慢跑吧,这样自己的人生方向才有了自己独有的特点


本文分享自微信公众号 - WwpwW(gh_245290c1861a)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!