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

在本题中,我们要统计字符的个数并且去除掉重复元素,我们可以使用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集合不包括重复元素来去重。

相关推荐
青山木13 小时前
Hot 100 --- 下一个排列
java·数据结构·算法·leetcode
Thinker QAQ13 小时前
并发编程(六):Atomic 的实现——从 Runtime 到 CPU
java·go·cas·并发编程·atomic·cpython
神仙别闹13 小时前
基于C++实现的(控制台)学校开课查询系统
开发语言·c++
沐欣工作室_lvyiyi13 小时前
基于SpringBoot的博物馆预约系统设计与实现(论文+源码)
java·spring boot·后端·计算机毕业设计
只睡四小时14 小时前
JS 手写 D-pad 空间导航:电视端焦点引擎实战
android·开发语言·前端·javascript·ecmascript·hls·空间导航
2601_9622186114 小时前
C++的几种编译器的实现
开发语言·c++
多弗朗皮卡丘14 小时前
C++ stack和queue
开发语言·c++·deque·queue·stack·容器适配器
维克兜率天14 小时前
【维克】弹性策略:用“乖离率“捕捉超跌反弹
android·开发语言·python·深度学习·kotlin·量化
轻口味14 小时前
HarmonyOS 7 新特性5:平行视界——轻视界文集的两栏阅读与窗口状态边界矩阵真机实测
华为·矩阵·harmonyos·鸿蒙·平行视界