博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
华为oj之字符个数统计
阅读量:6677 次
发布时间:2019-06-25

本文共 1265 字,大约阅读时间需要 4 分钟。

题目:字符个数统计

  • 热度指数:4720 时间限制:1秒 空间限制:32768K
  • 本题知识点:

题目描述

编写一个函数,计算字符串中含有的不同字符的个数。字符在ACSII码范围内(0~127)。不在范围内的不作统计。

输入描述:
输入N个字符,字符在ACSII码范围内。
输出描述:
输出范围在(0~127)字符的个数。
输入例子:
abc
输出例子:
3

在线提交网址:

分析:

此题可用hash表的思想, 既可以用C++中的unordered_mapset, 也可用数组来实现…

已AC代码:

#include 
#include
#include
#include
using namespace std;int main(){ string str; getline(cin,str); unordered_map
countMap; int diffCh = 0; for(int i=0; i <= str.length()-1; i++) { if( (int)str[i]>=0 && (int)str[i]<=127) { if(countMap.find(str[i]) == countMap.end()) { countMap[str[i]] = 1; } else { countMap[str[i]]++; } } } for(int i=0; i <= countMap.size()-1; i++) { if(countMap[str[i]] >= 1) { diffCh++; } } cout<
<

更简洁的写法:

#include
#include
using namespace std;int main(){ char ch; set
s; while(cin>>ch){ if(ch>=0 && ch<=127){ s.insert(ch); } } cout << s.size()<

转载于:https://www.cnblogs.com/enjoy233/p/10408765.html

你可能感兴趣的文章
开源|基于TensorFlow的聊天机器人-ErGo
查看>>
lucene4.0入门1
查看>>
Svn结合hook实现自动更新及多Project管理更新
查看>>
sgu 222
查看>>
让spring-data-jpa解放你的DAO
查看>>
58沈剑:架构师的平凡之路
查看>>
Hibernate问题-read-write缓存策略
查看>>
sql中实现汉字的拼音首字母查询
查看>>
Android 动态布局 (代码布局)
查看>>
MYSQL备份和恢复
查看>>
spark安装:在hadoop YARN上运行spark-shell
查看>>
Docker存储驱动之ZFS简介
查看>>
根据sql,一键生成excle 格式, 再通过 zip包压缩为zip
查看>>
PL/SQL Developer 添加数据
查看>>
PHP实时统计文件下载次数
查看>>
linux eth0 改eth1 在改ip
查看>>
乾颐堂鹏同学通过HCIE送给后来者的话
查看>>
JS中的prototype
查看>>
我的友情链接
查看>>
本体编辑和知识获取软件--protege汉化版
查看>>