题目描述:
输入一个字符串,对字符中的各个英文字符,数字,空格进行统计。按照统计个数由多到少输出统计结果,如果统计的个数相同,则按照ASII码由小到大排序输出。
输入描述:输入一串字符。
输出描述:对字符中的各个英文字符(大小写分开统计),数字,空格进行统计,并按照统计个数由多到少输出,如果统计的个数相同,则按照ASII码由小到大排序输出 。如果有其他字符,则对这些字符不用进行统计。
示例
输入:././aadddcc d dc2././
输出:dc a2
先导知识:
1.ascll 码和 char 字符相互转换
转换方法:直接进行强制类型装换
#include <iostream>
using namespace std;
int main()
{
int i = 97; //十进制 97 ascll码对应 char 字符为 ‘a’
cout << (char)i << endl;
char j = 'a';
cout << (int)j << endl;
}
/*=======================================
函数输出:a
97
=======================================*/
2.map 容器中的内容不按 key 排序而按 value 排序
排序方法:将 map 的 key 值和 value 值分别放在 pair 类型的 vector 中,构造比较函数Compare