题解 | 删除字符串中出现次数最少的字符

删除字符串中出现次数最少的字符

https://www.nowcoder.com/practice/05182d328eb848dda7fdd5e029a56da9

#include<iostream>
#include<string>
#include<vector>
#include <climits>
//提供了与整数类型相关的宏常量,用于表示各种整数类型的最小值和最大值,部分版本不需要该头文件。
//#include <algorithm>
//包含了许多用于操作容器(如数组、向量、列表等)的通用算法。

using namespace std;

int main() {
	string s;
	cin >> s;
	//26个字母在字母表中的排行数字减一与count角标相对应
	vector<int> count(26, 0);
	//统计每个字母出现的次数,其出现次数就是对应角标的count存储的数字
	for (char ch : s) {
		count[ch - 'a'] ++;
	}
    //当发现一个大于0并小于目前最小计数的数值时,更新最小计数的数值
	int mincount = INT_MAX;
	for (int num : count) {
		if (num > 0 && num < mincount)
			mincount = num;
	}
    //如果计数等于最小计数,则不会将该字母加入res字符串中
	string res;
	for (char c : s) {
		if (count[c - 'a'] != mincount) {
			res += c;
		}
	}
	cout << res << endl;
	return 0;
}

全部评论

相关推荐

07-01 13:37
门头沟学院 Java
steelhead:不是你的问题,这是社会的问题。
点赞 评论 收藏
分享
06-20 21:22
已编辑
门头沟学院 Java
纯真的河老师在喝茶:答应了就跑啊,实习随便跑啊,别被pua了,md就是找个廉价劳动力,还平稳过度正式工,到时候跟你说没转正
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务