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

举报
chenyu 发表于 2021/07/27 00:00:11 2021/07/27
【摘要】 题目 描述:  实现删除字符串中出现次数最少的字符,若多个字符出现次数一样,则都删除。输出删除这些单词后的字符串,字符串中其它字符保持原来的顺序。 题目类别: 字符串  难度: 中级  运行时间限制: 10Sec  内存限制: 128MByte  阶段: 入职前练习  输入:  字符串只包含小写英文字母...

题目

描述: 
实现删除字符串中出现次数最少的字符,若多个字符出现次数一样,则都删除。输出删除这些单词后的字符串,字符串中其它字符保持原来的顺序。

题目类别: 字符串 
难度: 中级 
运行时间限制: 10Sec 
内存限制: 128MByte 
阶段: 入职前练习 
输入: 
字符串只包含小写英文字母, 不考虑非法输入,输入的字符串长度小于等于20个字节。

输出: 
删除字符串中出现次数最少的字符后的字符串。

样例输入: 
abcdd

样例输出: 
dd

代码

 


  
  1. #include <iostream>
  2. #include <string>
  3. #include <climits>
  4. using namespace std;
  5. string DeleteMinChar(string str){
  6. string result = "";
  7. int size = str.size();
  8. if (size == 0) {
  9. return result;
  10. }
  11. //统计个数
  12. int a[256] = {0};
  13. for (int i = 0; i < size; i++) {
  14. ++a[str[i]];
  15. }
  16. int min = INT_MAX;
  17. //得到最小的个数
  18. for (int j = 0; j < size; j++) {
  19. if (min > a[str[j]]) {
  20. min = a[str[j]];
  21. }
  22. }
  23. //去除最小个数的字符
  24. for (int k = 0; k < size; k+&#

文章来源: chenyu.blog.csdn.net,作者:chen.yu,版权归原作者所有,如需转载,请联系作者。

原文链接:chenyu.blog.csdn.net/article/details/52317701

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。