[451] Sort Characters By Frequency [Medium]

给一个字符串,要求返回按照字母出现频率的排序后的字符串。(哈希表+桶排)

有个技巧是Hash用Value作为Index放到桶里。

 class Solution {
public:
string frequencySort(string s) {
map<char, int> mp;
for (auto c : s) {
mp[c]++;
}
string ans = "";
// 桶排序
vector<string> bucket(s.size()+, "");
for (auto ele : mp) {
char ch = ele.first;
int cnt = ele.second;
bucket[cnt].append(cnt, ch);
}
for (auto i = bucket.size() - ; i >= ; --i) {
ans += bucket[i];
}
return ans;
}
};

最新文章

  1. Kafka 文档引言
  2. [LeetCode] Decode String 解码字符串
  3. Concurrency vs. Parallelism
  4. POJ 2976
  5. 了解canvas
  6. 【Alpha版本】 第六天 11.14
  7. CSS3媒体查询
  8. 个人博客作业_week2
  9. 剑指Offer07 斐波那契数列
  10. html-----017
  11. 某些手机一直连不上adb的解决办法
  12. iOS中保证线程安全的几种方式与性能对比
  13. [转]solr DataImportHandler 解决mysql 表导入内存溢出问题
  14. python不使用第三方变量,交换两个变量的值
  15. nodejs 字符串全排列 和 去重
  16. 使用git将本地代码传到github
  17. jq 操作表单中 checkbox 全选 单选
  18. Java 多线程(五)—— 线程池基础 之 FutureTask源码解析
  19. Java 读数据库字段时发现的一个现象
  20. ABP框架 配置权限、本地语言文件、左侧菜单项

热门文章

  1. Linux系统分辨率设置
  2. 团队作业-Bata冲刺第一天
  3. 【leetcode】996. Number of Squareful Arrays
  4. 获取FileSystem
  5. eureka学习(二)
  6. layer icon对应图标
  7. Vue使用lib-flexible,将px转化为rem
  8. idea使用 xml文件
  9. php开发面试题---jquery和vue对比(整理)
  10. (6)C++ 函数