回文 偏执的太偏执、 2022-02-25 10:24 262阅读 0赞 【题目】 Given a string s, partition s such that every substring of the partition is a palindrome. Return all possible palindrome partitioning of s. For example, given s =“aab”, Return \[ \[“aa”,“b”\], \[“a”,“a”,“b”\] \] **(译)** 给定一个字符串s,划分s使得划分的每个子字符串都是一个回文,返回s的所有可能情况 例如:s = “aab” 返回 :\[ \[“aa”,“b”\], \[“a”,“a”,“b”\] \] 【思路】 回溯法 ![在这里插入图片描述][watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl8zOTc5NTA0OQ_size_16_color_FFFFFF_t_70] 【实现】 import java.util.ArrayList; import java.util.List; public class Solution { public static ArrayList<ArrayList<String>> partition(String s) { ArrayList<ArrayList<String>> lists = new ArrayList<>(); ArrayList<String> list = new ArrayList<>(); partitionHepler(lists, list, s); System.out.println(lists); return lists; } public static void partitionHepler(ArrayList<ArrayList<String>> lists, ArrayList<String> list, String s) { if (null == s || s.length() == 0) { lists.add(new ArrayList<>(list)); return; } int len = s.length(); for (int i = 0; i <= len;i++) { String subStr = s.substring(0, i); if (isPalindrome(subStr)) { list.add(subStr); partitionHepler(lists, list, s.substring(i, len)); list.remove(list.size() - 1); } } } public static boolean isPalindrome(String s) { if (null == s || s.length() == 0) return false; int length = s.length(); int middle = length / 2; for (int i = 0; i < middle;i++) { if (s.charAt(i) != s.charAt(length - 1 - i)) { return false; } } return true; } public static void main(String[] args) { String s = "aab"; partition(s); } } [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl8zOTc5NTA0OQ_size_16_color_FFFFFF_t_70]: /images/20220225/09734e54231347bea3db5c656a0f8814.png
相关 构造回文 构造回文 提到回文串,自然要利用回文串的特点,想到将源字符串逆转后,“回文串”(不一定连续)相当于顺序没变 求原字符串和其反串的最大公共子序列(不是子串,因为可以不连 逃离我推掉我的手/ 2023年01月20日 09:43/ 0 赞/ 243 阅读
相关 回文数 题目: 判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。 示例 1: 输入: 121 输出: true 示例 2: 输 傷城~/ 2022年11月19日 09:50/ 0 赞/ 288 阅读
相关 回文 function checkPalindrom(str) { return str = str.split('').reverse().join( 蔚落/ 2022年11月07日 13:09/ 0 赞/ 225 阅读
相关 回文序列 2016年8月1日13:55:05 编写一个算法,判断任意给定的字符序列是否是回文序列, 什么是回文序列? 所谓回文是指 ╰半夏微凉°/ 2022年07月16日 13:27/ 0 赞/ 233 阅读
相关 回文回文数 HUST - 1694 回文回文数 HUST - 1694 -------------------- Problem 如果一个数从左往右读和从右往左读都是一样,那么这个数就叫做 “回文数 亦凉/ 2022年06月14日 10:41/ 0 赞/ 284 阅读
相关 回文字符串 回文串是指aba、abba、cccbccc、aaaa这种左右对称的字符串。每个字符串都可以通过向中间添加一些字符,使之变为回文字符串。 例如:abbc 添加2个字符可以变为 我就是我/ 2022年06月11日 04:25/ 0 赞/ 320 阅读
相关 回文 【题目】 Given a string s, partition s such that every substring of the partition is a pal 偏执的太偏执、/ 2022年02月25日 10:24/ 0 赞/ 263 阅读
相关 回文筛选 ^\(.\)\t\(.\)\t\S\+\t\S\+\(\n.\)\+\n\2\t\1 !/usr/bin/perl use warnings; 野性酷女/ 2021年12月24日 03:37/ 0 赞/ 258 阅读
相关 回文数 判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。 示例 1: 输入: 121 输出: true 短命女/ 2021年10月29日 12:00/ 0 赞/ 428 阅读
相关 回文数 判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。 示例 1: 输入: 121 输出: true 示例 2: 输入: -12 一时失言乱红尘/ 2021年10月15日 03:43/ 0 赞/ 409 阅读
还没有评论,来说两句吧...