我是靠谱客的博主 欣喜诺言,最近开发中收集的这篇文章主要介绍HJ102 字符统计,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

描述

输入一个只包含小写英文字母和数字的字符串,按照不同字符统计个数由多到少输出统计结果,如果统计的个数相同,则按照ASCII码由小到大排序输出。

数据范围:字符串长度满足1≤len(str)≤1000

输入描述:

一个只包含小写英文字母和数字的字符串。

输出描述:

一个字符串,为不同字母出现次数的降序表示。若出现次数相同,则按ASCII码的升序输出。

//ASCII码:0/48,A/65,a/97

 

#include<iostream>
#include<string>
#include<algorithm>
using namespace std;

int main()
{
	string str;
	while (cin >> str)
	{
		int a[150] = {0};//ASCII码128位,申请一个数组,必须初始化为0
		int max_num = 0;
		for (int i = 0; i < str.size(); i++)
		{
			a[str[i]]++;
			max_num = max(max_num, a[str[i]]);
		}
		while (max_num)
		{
			for (int i = 0; i < 150; i++)//遍历str会重复输出,应遍历 数组
			{
				if (max_num == a[i])
				{
					cout << char(i);//强制类型转换
				}
			}
			max_num--;
		}
		cout << endl;

	}

	return 0;
}

 

 

 

最后

以上就是欣喜诺言为你收集整理的HJ102 字符统计的全部内容,希望文章能够帮你解决HJ102 字符统计所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(56)

评论列表共有 0 条评论

立即
投稿
返回
顶部