力扣:828. 统计子串中的唯一字符

【字符串】【C++算法】828.统计子串中的唯一字符 我们定义了一个函数 countUniqueChars(s) 来统计字符串 s 中的唯一字符,并返回唯一字符的个数。 例如:s = "LEETCODE" ,则其中 "L", "T","C","O","D" 都是唯一字符,因为它们只出现一次,所以 countUniqueChars(s) = 5 。 本题将会给你一个字符串 s ,我们需要返回 countUniqueChars(t) 的总和,其中 t 是 s 的子字符串。输入用例保证返回值为 32 位整数。 注意,某些子字符串可能是重复的,但你统计时也必须算上这些 阅读详情
package com.算法专练.力扣.统计子串中的唯一字符;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
 * @author xnl
 * @Description:
 * @date: 2022/9/6   21:36
 */
public class Solution {
    public static void main(String[] args) {
        Solution solution = new Solution();
        String str = "ABA";
        System.out.println(solution.uniqueLetterString(str));
    }

    public int uniqueLetterString(String s) {
        Map<Character, List<Integer>> index = new HashMap<>();
        for (int i = 0; i < s.length(); i++){
            char c = s.charAt(i);
            if (!index.containsKey(c)){
                index.put(c, new ArrayList<>());
                index.get(c).add(-1);
            }
            index.get(c).add(i);
        }
        int res = 0;
        for (Map.Entry<Character, List<Integer>> entry : index.entrySet()) {
            List<Integer> value = entry.getValue();
            value.add(s.length());
            for (int i = 1; i < value.size() - 1; i++){
                res += (value.get(i) - value.get(i - 1) ) * (value.get(i + 1) - value.get(i));
            }
        }
        return res;
    }

}

2.1 SRv6 TE Policy SRv6 TE Policy是在SRv6技术基础上发展的一种新的隧道引流技术。SRv6 TE Policy路径表示为指定路径的段列表(Segment List),称为SID列表(Segment ID List)。每个SID列表是从源到目的地的端到端路径,并指示网络中的设备遵循指定的路径,而不是遵循IGP计算的最短路径。如果数据包被导入SRv6 TE Policy中,SID列表由头端添加到数据包上,网络的其余设备执行SID列表中嵌入的指令。 阅读详情

相关推荐

形位公差标注的常见误区与优化策略

本文深入解析机械设计中形位公差标注的常见误区与优化策略,特别针对NX2406用户提供实用技巧。从标注冗余、基准选择到公差值设定等五大误区入手,结合工程图实例展示如何提升标注精度与效率,帮助工程师避免常见错误,优化设计流程,确保零件功能实现与制造可行性。

info6的博客 245

图解LeetCode——828. 统计子串中的唯一字符(难度:困难)

即:A出现4次 + A出现6次 + A出现6次 + A出现4次 = 20。通过上面的例子,我们将问题转换为。

爪哇缪斯的博客 373

老服务器焕新记:在Dell R730上折腾Nvidia K80显卡的完整记录(含Anaconda环境配置)

本文详细记录了在Dell R730服务器上为Nvidia K80计算卡安装驱动、配置CUDA及Anaconda环境的完整过程。文章重点解决了老旧硬件与CentOS 7系统的兼容性问题,提供了从BIOS设置、驱动版本精准匹配到Python机器学习环境搭建的实战指南,旨在帮助读者低成本挖掘旧服务器的GPU计算潜力。

weixin_29197835的博客 503

JAVA程序设计:统计子串中的唯一字符(LeetCode:828)

我们定义了一个函数 countUniqueChars(s) 来统计字符串 s 中的唯一字符,并返回唯一字符的个数。 例如:s = "LEETCODE" ,则其中 "L", "T","C","O","D" 都是唯一字符,因为它们只出现一次,所以 countUniqueChars(s) = 5 。 本题将会给你一个字符串 s ,我们需要返回 countUniqueChars(t) 的总和,其中 t...

信仰.的博客 651

SystemRDL:从寄存器描述到自动化生成的完整指南

本文详细介绍了SystemRDL如何通过“一份描述,多处生成”的理念,彻底解决芯片与FPGA设计中手动维护寄存器带来的不一致与低效问题。文章提供了从语言快速上手、核心组件讲解到使用PeakRDL工具链实现自动化代码与文档生成的完整实战指南,帮助硬件工程师构建高效、可靠的寄存器开发流程。

weixin_29243279的博客 659

[数字电路]用与非门实现BCD译码器驱动数码管

Hello,大家好。这里是xdd_core,好久不见。今天来和大家聊聊大一数字电路课程的一个课设。# Key word:BCD Decoder,Proteus8.x,NAND Gate,Digital Circuit# 流程:Proteus8.x仿真电路并绘制PCB导出Gerber文件打样,最终实物验证。# 以下为我对这个课设的report(里面对整个设计做了详细介绍,并设计了完整的验证电路) 感谢观看,仅供参考,未经作者允许,禁止转载/抄袭,本文已上传至数据库,查重必挂QAQ BCD to 7-Segme

xddcore的博客 6012

【LeetCode:828. 统计子串中的唯一字符 | 贡献法 & 乘法原理】

【LeetCode:828. 统计子串中的唯一字符 | 贡献法 & 乘法原理】我们定义了一个函数 countUniqueChars(s) 来统计字符串 s 中的唯一字符,并返回唯一字符的个数。 例如:s = "LEETCODE" ,则其中 "L", "T","C","O","D" 都是唯一字符,因为它们只出现一次,所以 countUniqueChars(s) = 5 。 本题将会给你一个字符串 s ,我们需要返回 countUniqueChars(t) 的总和,其中 t 是 s 的子字符串。输入用例保

Coder_ljw的博客 388

SAP 中配置权限职责菜单并分配给用户的核心流程是:用PFCG 创建 / 维护角色(含菜单、事务码、权限)→ 生成权限参数文件 → 通过 SU01/SU10 将角色分配给用户

SAP权限配置核心流程:1)通过PFCG创建角色,配置菜单事务码及权限对象;2)生成权限参数文件;3)用SU01/SU10分配角色给用户。关键步骤包括:在PFCG中维护菜单结构、设置权限字段值、生成Profile,通过用户比较验证权限。批量分配可用SU10,特殊需求可创建复合角色或自定义权限对象。常见问题需检查权限缺失(SU53)、菜单分配及组织级别设置。流程简化为:创建角色→配置权限→分配用户→验证生效。

金牌架构师 1273

leetcode:828. 统计子串中的唯一字符【贡献题 + 记录同一个c的下标 + 分别记录每个c的贡献】

Map的操作 HashMap的定义 computeIfAbsent更新新的valuesString的操作 用charAt对于List 使用get方法可以找元素。

小楼一夜听春雨 480

性能测试能力提升-线程、并发、吞吐量、TPS、QPS、响应时间

接着上一篇的知识:性能测试能力提升-关于性能测试,本篇文章,我们将主要介绍以下几方面的知识: 线程数&并发用户数 相对并发&绝对并发 吞吐量 TPS&QPS 响应时间

程序员小杨哥的博客 4589

从Overleaf上导出Latex论文发布到arxiv详细教程(常见问题与解决)

如果是做cv的论文请选择“Computer Vision and Pattern Recognition”,选择“Artificial Intelligence”可能会被on hold,貌似这个指的是传统的人工智能?我用公司邮箱注册发布一篇论文,一个多月还是“on hold”状态,换成edu邮箱第二天就被发布了。3、有可能是subject class选错了,编辑会帮你手动选择,然后发一封邮件告知你解除……报错缺失bbl等文件,这是因为从Menu中下载的话,是没有bbl文件的。论文被on hold。

沉迷单车的追风少年 3584

Leetcode—828.统计子串中的唯一字符【困难】

枚举所有种类字母在s中出现的位置,分别统计只包含这个字母不包含该类字母中其他字母的子串个数。

Atticus的博客 398

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Java实现 LeetCode 828 统计子串中的唯一字符(暴力+转数组)

828. 统计子串中的唯一字符 我们定义了一个函数 countUniqueChars(s) 来统计字符串 s 中的唯一字符,并返回唯一字符的个数。 例如:s = “LEETCODE” ,则其中 “L”, “T”,“C”,“O”,“D” 都是唯一字符,因为它们只出现一次,所以 countUniqueChars(s) = 5 。 本题将会给你一个字符串 s ,我们需要返回 countUniqueChars(t) 的总和,其中 t 是 s 的子字符串。注意,某些子字符串可能是重复的,但你统计时也必须算上这些重复的

南 墙 9538

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

LeetCode 828. 统计子串中的唯一字符(中心扩展)

1. 题目 我们定义了一个函数 countUniqueChars(s) 来统计字符串 s 中的唯一字符,并返回唯一字符的个数。 例如:s = “LEETCODE” ,则其中 “L”, “T”,“C”,“O”,“D” 都是唯一字符,因为它们只出现一次,所以 countUniqueChars(s) = 5 。 本题将会给你一个字符串 s ,我们需要返回 countUniqueChars(t) 的总和,其中 t 是 s 的子字符串。 注意,某些子字符串可能是重复的,但你统计时也必须算上这些重复的子字符串(也就是说

Michael是个半路程序员 1682

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

Leetcode-828. 统计子串中的唯一字符

Leetcode-828. 统计子串中的唯一字符

道纪书生的博客 936

Leetcode 828. 统计子串中的唯一字符 C++

Leetcode 828. 统计子串中的唯一字符 题目 我们定义了一个函数 countUniqueChars(s) 来统计字符串 s 中的唯一字符,并返回唯一字符的个数。 例如:s = “LEETCODE” ,则其中 “L”, “T”,“C”,“O”,“D” 都是唯一字符,因为它们只出现一次,所以 countUniqueChars(s) = 5 。 本题将会给你一个字符串 s ,我们需要返回 countUniqueChars(t) 的总和,其中 t 是 s 的子字符串。注意,某些子字符串可能是重复的,但你统

weixin_43750513的博客 441

Leetcode.828 统计子串中的唯一字符

dp

感觉画质不如...原神的博客 400

力扣算法题——828.统计子串中的唯一字符

统计子串中的唯一字符

hutc_Alan的博客 998

LeetCode 828. 统计子串中的唯一字符

对于第一个a:他只对a,ab,abc有贡献度,a前面可以组成的串为0 -(-1)=1个,后面为3 - 0 = 3个,根据乘法原理有 3 * 1 = 3 个。对于第二个a:前面有3 - 0 = 3个,后面有5 -3 = 2个,可以理解为(bca, ca, a) * ('', b) 注意有''哈。a b c a d a:统计a出现的下标为:-1 0 3 5 6,为了方便计算在前后补充-1和n。

Sasakihaise_的博客 2769

LeetCode 0828. 统计子串中的唯一字符

LeetCode 0828. 统计子串中的唯一字符 我们定义了一个函数 countUniqueChars(s) 来统计字符串 s 中的唯一字符,并返回唯一字符的个数。

<font color="Pink">Tisfy的博客</font> 375

Leetcode 828. 统计子串中的唯一字符

Leetcode 828. 统计子串中的唯一字符

weixin_44852067的博客 437

LeetCode每日一题——828. 统计子串中的唯一字符

LeetCode每日一题——828. 统计子串中的唯一字符

hyk的博客 496

828. 统计子串中的唯一字符

,那么由于s字符串中的字符都是彼此不重复的,所以,总结果其实就是“A”、“B”、“C”、“D”这个四个字符在所有10个子串中出现的次数之和,即:A出现4次 + A出现6次 + A出现6次 + A出现4次 = 20。其实意思就是给一个字符串s,先将s分解为N个子串,然后再针对每个子串进行计算,计算方式是:子串中仅出现1次的字符,算作1,出现多次的字符,则不计算在内,然后将结果相加。当然,这是一个子串的计算方式,我们拆分出N的子串,就都要这么计算一下,最终N个子串的总结果,就是本题的返回值。

qq_40713201的博客 225
上一篇: 牛客网:NC138 矩阵最长递增路径
下一篇: 力扣:1592. 重新排列单词间的空格
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值