牛客网 华为机试 字符个数统计

在本题中,我们要统计字符的个数并且去除掉重复元素,我们可以使用hashset集合,因为hashset是不包括重复元素的。然后我们只需要从头开始遍历这个字符串,依次将元素加入到hashset集合即可,最后返回集合的长度即可。

复制代码
import java.util.HashSet;
import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
       Scanner sc = new Scanner(System.in);
       String str = sc.nextLine();
       HashSet<Character> hs = new HashSet<Character>();
       for(int i = 0;i<str.length();i++){
            hs.add(str.charAt(i));    
       }
       System.out.println(hs.size());
    }
}

注意:本题的关键是利用hashset集合不包括重复元素来去重。

相关推荐
人间凡尔赛3 小时前
Next.js 16 生产级实战:Cache Components + View Transitions 完整指南
开发语言·javascript·ecmascript
ldsweet4 小时前
《HarmonyOS技术精讲-Basic Services Kit》上传下载进阶:多任务并发与后台长时任务
华为·harmonyos
架构源启4 小时前
文档接入与智能解析:基于 Spring AI 1.1.x 的多格式解析、版面理解与结构化抽取
java·人工智能·spring
qizayaoshuap5 小时前
# [特殊字符] 宠物模拟器 — 鸿蒙ArkTS完整技术解析(最终篇)
华为·harmonyos·宠物
不言鹅喻5 小时前
HarmonyOS ArkTS 实战:实现一个校园自动售货机库存与补货记录应用
华为·harmonyos
稚南城才子,乌衣巷风流7 小时前
函数:编程中的核心概念
开发语言·前端·javascript
阿米亚波7 小时前
【C++】流式数据输入处理(不完全整理)
开发语言·c++·笔记
大模型码小白8 小时前
JAVA 集合框架进阶:List 与 Set 的深度解析与实战
java·开发语言·人工智能·windows·语言模型·list·ai编程
名字还没想好☜8 小时前
Go 的 time.Ticker 陷阱:定时任务里被忽略的内存泄漏与正确关闭
java·数据库·golang·go·定时器
皓月斯语8 小时前
【C++基础】三目运算符
开发语言·数据结构·c++