Java实现 LeetCode 131 分割回文串
2023-09-14 08:58:08 时间
class Go{
List<List<String>> result = new ArrayList<>();
List<String> list = new ArrayList<>();
char[] arr;
String s;
void core(int index){
if (index == arr.length){
result.add(new ArrayList<>(list));
return;
}
for (int i = index; i < arr.length; i++){
if (ishw(index,i)){
list.add(s.substring(index,i + 1));
core(i + 1);
list.remove(list.size() - 1);
}
}
}
boolean ishw(int left,int right){
int L = left,R = right;
while (L <= R){
if (arr[L++] != arr[R--]){
return false;
}
}
return true;
}
public List<List<String>> partition(String s) {
arr = s.toCharArray();
this.s = s;
core(0);
return result;
}
}
public class Cutpalindrome {
public static void main(String[] args) {
Go g = new Go();
System.out.println(g.partition("aacb"));
}
}
相关文章
- java基础知识回顾之java Thread类学习(五)--java多线程安全问题(锁)同步的前提
- Java实现 LeetCode 794 有效的井字游戏 (暴力分析)
- Java实现 LeetCode 709 转换成小写字母(ASCII码处理)
- Java实现 LeetCode 682 棒球比赛(暴力)
- Java实现 LeetCode 685 冗余连接 II(并查集+有向图)
- Java实现 LeetCode 667 优美的排列 II(暴力)
- Java实现 LeetCode 659 分割数组为连续子序列 (哈希)
- Java实现 LeetCode 581 最短无序连续子数组(从两遍搜索找两个指针)
- Java实现 LeetCode 567 字符串的排列(滑动窗口,处理区间内的字符数量)
- Java实现 LeetCode 558 四叉树交集(四叉树,第一次遇到,研究了半天)
- Java实现 LeetCode 508 出现次数最多的子树元素和
- Java实现 LeetCode 514 自由之路
- Java实现 LeetCode 443 压缩字符串
- Java实现 LeetCode 388 文件的最长绝对路径
- Java实现 LeetCode 328 奇偶链表
- Java实现 LeetCode 242 有效的字母异位词
- Java实现 LeetCode 174 地下城游戏
- Java实现 LeetCode 171 Excel表列序号
- Java实现 LeetCode 165 比较版本号
- Java实现 LeetCode 148 排序链表
- Java实现 LeetCode 139 单词拆分
- Java实现 LeetCode 125 验证回文串
- Java实现 LeetCode 85 最大矩形
- Java实现 LeetCode 59 螺旋矩阵 II
- Java实现LeetCode #986 - Interval List Intersections
- macos:安装java 17.0.6(android studio报错:Unable to locate a Java Runtime.)
- Atitit java播放器调音速率快慢的实现 目录 1.1. 原理 本质上是改变采样率即可1 2. 使用Java增加/降低AudioInputStream的音频播放速度(Increase/dec
- Java学习路线-57:静态代理和动态代理