代码随想录——分割回文串(Leetcode 131)

题目链接

回溯

java 复制代码
class Solution {
    List<List<String>> res = new ArrayList<List<String>>();
    List<String> list= new ArrayList<String>();
    public List<List<String>> partition(String s) {
        backtracking(s, 0);
        return res;
    }
    public void backtracking(String s, int startIndex){
        if(startIndex >= s.length()){
            res.add(new ArrayList<>(list));
            return;
        }
        for(int i = startIndex; i < s.length(); i++){
            // 如果是回文数,则继续回溯
            if(is(s, startIndex, i)){
                list.add(s.substring(startIndex, i + 1));
            }else{
                continue;
            }
            backtracking(s, i + 1);
            list.removeLast();
        }
    }
    // 判断回文数
    public boolean is(String s, int start, int end){
        for(int i = start, j = end; i < j; i++, j--){
            if(s.charAt(i) != s.charAt(j)){
                return false;
            }
        }
        return true;
    }
}
相关推荐
Frostnova丶29 分钟前
LeetCode 190.颠倒二进制位
java·算法·leetcode
骇城迷影1 小时前
代码随想录:链表篇
数据结构·算法·链表
闻哥1 小时前
Redis事务详解
java·数据库·spring boot·redis·缓存·面试
hrhcode1 小时前
【Netty】五.ByteBuf内存管理深度剖析
java·后端·spring·springboot·netty
道亦无名2 小时前
aiPbMgrSendAck
java·网络·数据库
专注前端30年2 小时前
智能物流路径规划系统:核心算法实战详解
算法
发现你走远了2 小时前
Windows 下手动安装java JDK 21 并配置环境变量(详细记录)
java·开发语言·windows
心 -2 小时前
java八股文DI
java
json{shen:"jing"}2 小时前
字符串中的第一个唯一字符
算法·leetcode·职场和发展
黎雁·泠崖2 小时前
Java常用类核心详解(一):Math 类超细讲解
java·开发语言