LeetCode-----回文串分割
来源:互联网 发布:js动态生成表格 编辑:程序博客网 时间:2024/05/17 13:05
回文串分割
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”]
]
import java.util.*;public class main { public static void main(String[] args) { Scanner sc=new Scanner(System.in); String s="bb"; ArrayList<ArrayList<String>> list=partition(s); for (ArrayList<String> l:list){ System.out.print(l); } } public static ArrayList<ArrayList<String>> partition(String s) { ArrayList<ArrayList<String>> list=new ArrayList<ArrayList<String>>(); list=partitionDi(s); return list; } public static ArrayList<ArrayList<String>> partitionDi(String s) { ArrayList<ArrayList<String>> res=new ArrayList<ArrayList<String>>(); if (s.length()==0){ return res; } if (s.length()==1){ ArrayList<String> inList=new ArrayList<String>(); inList.add(s); res.add(inList); return res; } for (int i=0;i<s.length();i++){ if (isPalindrome(s.substring(0,i+1))){ if (i==s.length()-1){ ArrayList<String> inList=new ArrayList<String>(); inList.add(s.substring(0,i+1)); res.add(inList); } ArrayList<ArrayList<String>> list=partitionDi(s.substring(i+1)); for (int j=0;j<list.size();j++){ ArrayList<String> inList=new ArrayList<String>(); inList.add(s.substring(0,i+1)); inList.addAll(list.get(j)); res.add(inList); } } } return res; } public static boolean isPalindrome(String s){ int i=0; int j=s.length()-1; while (i<j){ if (s.charAt(i)!=s.charAt(j)){ return false; } i++; j--; } return true; }}
阅读全文
0 0
- LeetCode-----回文串分割
- LeetCode-----回文串的最小分割
- [LeetCode] Palindrome Partitioning 回文分割
- 题目:分割回文串
- LintCode- 分割回文串
- 分割回文串
- LintCode:分割回文串
- 分割回文串
- 分割回文串
- 分割回文串
- 分割回文串I
- 分割回文串-LintCode
- 分割回文串II
- 分割回文串 II
- Palindrome Partitioning 分割字符串为回文@LeetCode
- Leetcode 131 Palindrome Partitioning 回文分割
- LintCode-分割回文串 II
- 题目:分割回文串 II
- 基于 HTML5 的 JavaScript 图表库——chart.js
- [java] 二叉树的后序遍历(递归与非递归实现)
- GBDT(MART) 迭代决策树入门教程 | 简介
- 时间段插件daterangepicker —— 基本使用及回显问题解决方法
- gitlab project项目迁移
- LeetCode-----回文串分割
- 配置参数
- Action<T>和Func<T>委托数组
- Spatial Transfomer Networks
- 编译天嵌E8内核源码
- 永宁的GitHub开源项目
- 【LeetCode】 541. Reverse String II
- 关于Java的File.separator
- 进程与线程