动态规划算法-子数组、子串系列(数组中连续的一段):26.环绕字符串中唯一的子字符串

题目链接:467. 环绕字符串中唯一的子字符串(中等)

算法原理:

解法:动态规划

Java代码:

java 复制代码
import java.util.Arrays;

/**
 * Created with IntelliJ IDEA.
 * Description:
 * User: 王洋
 * Date: 2025-10-23
 * Time: 09:29
 */
class Solution {
    //467. 环绕字符串中唯一的子字符串
    //看完算法原理之后自己写的,基本一遍过
    //吴小哲跟我写的大体一样,只不过它是把s转换成字符数组了
    public int findSubstringInWraproundString(String s) {
        int n=s.length();
        int[] dp=new int[n];
        Arrays.fill(dp,1);
        for(int i=1;i<n;i++){
            char ch1=s.charAt(i-1);
            char ch=s.charAt(i);
            if((ch1-'a'+1==ch-'a')||ch1=='z'&&ch=='a')
                dp[i]+=dp[i-1];
        }
        int[] hash=new int[26];
        for(int i=0;i<n;i++){
            int ch=s.charAt(i)-'a';
            hash[ch]=Math.max(hash[ch],dp[i]);
        }
        int sum=0;
        for(int x:hash) sum+=x;
        return sum;
    }
}
相关推荐
happyprince19 分钟前
01-整体观-Codex全貌解读(源码)
算法·ai编程
俊基科技40 分钟前
别自己写算法了,让这颗37.5毫米的模组替你“闭嘴干活”
神经网络·算法·硬件开发·ai降噪·语音模块·回音消除
莫得感情 o1 小时前
并发 14 · 收官:虚拟线程与结构化并发
java·并发
_Narcissus_1 小时前
动态规划初探(含完整代码实现)
c语言·数据结构·c++·算法·动态规划·背包问题·最短路径
聚美智数1 小时前
图片水印-图片剪裁-图片缩放API接口介绍
java·服务器·数据库
世人万千丶2 小时前
鸿蒙项目实战 - 社区活动编排板:标签云布局算法与自动换行
学习·算法·华为·harmonyos·鸿蒙
zander2582 小时前
LeetCode 279. 完全平方数
算法·深度优先
xierui1231232 小时前
AI Agent 隐私架构:本地化重点为什么是登录态与执行权限
java·人工智能·网络安全·架构
cfm_29142 小时前
Spring AI Tool 调用架构全解
java·人工智能·spring