上海网站制作网络推广为企业做一件小事
web/
2025/10/1 18:31:21/
文章来源:
上海网站制作网络推广,为企业做一件小事,网站建设是什么科目,域名购买 万网#x1f680; 算法题 #x1f680; #x1f332; 算法刷题专栏 | 面试必备算法 | 面试高频算法 #x1f340; #x1f332; 越难的东西,越要努力坚持#xff0c;因为它具有很高的价值#xff0c;算法就是这样✨ #x1f332; 作者简介#xff1a;硕风和炜#xff0c;… 算法题 算法刷题专栏 | 面试必备算法 | 面试高频算法 越难的东西,越要努力坚持因为它具有很高的价值算法就是这样✨ 作者简介硕风和炜CSDN-Java领域新星创作者保研|国家奖学金|高中学习JAVA|大学完善JAVA开发技术栈|面试刷题|面经八股文|经验分享|好用的网站工具分享 恭喜你发现一枚宝藏博主,赶快收入囊中吧 人生如棋我愿为卒行动虽慢可谁曾见我后退一步 算法题 目录 题目链接⛲ 题目描述 求解思路实现代码运行结果⚡ 贡献法 乘法原理 求解思路 实现代码 运行结果 拓展练习 共勉 题目链接
828. 统计子串中的唯一字符
⛲ 题目描述
我们定义了一个函数 countUniqueChars(s) 来统计字符串 s 中的唯一字符并返回唯一字符的个数。
例如s “LEETCODE” 则其中 “L”, “T”,“C”,“O”,“D” 都是唯一字符因为它们只出现一次所以 countUniqueChars(s) 5 。
本题将会给你一个字符串 s 我们需要返回 countUniqueChars(t) 的总和其中 t 是 s 的子字符串。输入用例保证返回值为 32 位整数。
注意某些子字符串可能是重复的但你统计时也必须算上这些重复的子字符串也就是说你必须统计 s 的所有子字符串中的唯一字符。
示例 1
输入: s “ABC” 输出: 10 解释: 所有可能的子串为“A”,“B”,“C”,“AB”,“BC” 和 “ABC”。 其中每一个子串都由独特字符构成。 所以其长度总和为1 1 1 2 2 3 10 示例 2
输入: s “ABA” 输出: 8 解释: 除了 countUniqueChars(“ABA”) 1 之外其余与示例 1 相同。 示例 3
输入s “LEETCODE” 输出92
提示
1 s.length 105 s 只包含大写英文字符 求解思路实现代码运行结果 ⚡ 贡献法 乘法原理 求解思路
参考题解【爪哇缪斯】图解LeetCode 实现代码
class Solution {public int uniqueLetterString(String s) {MapCharacter, ListInteger index new HashMapCharacter, ListInteger();for (int i 0; i s.length(); i) {char c s.charAt(i);if (!index.containsKey(c)) {index.put(c, new ArrayListInteger());index.get(c).add(-1);}index.get(c).add(i);}int res 0;for (Map.EntryCharacter, ListInteger entry : index.entrySet()) {ListInteger arr entry.getValue();arr.add(s.length());for (int i 1; i arr.size() - 1; i) {res (arr.get(i) - arr.get(i - 1)) * (arr.get(i 1) - arr.get(i));}}return res;}
}运行结果 拓展练习
2262. 字符串的总引力907. 子数组的最小值之和 共勉
最后我想和大家分享一句一直激励我的座右铭希望可以与大家共勉
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/85189.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!