给定一个字符串,请将字符串里的字符按照出现的频率降序排列。

示例 1:

输入:
"tree"输出:
"eert"解释:
'e'出现两次,'r'和't'都只出现一次。
因此'e'必须出现在'r'和't'之前。此外,"eetr"也是一个有效的答案。

示例 2:

输入:
"cccaaa"输出:
"cccaaa"解释:
'c'和'a'都出现三次。此外,"aaaccc"也是有效的答案。
注意"cacaca"是不正确的,因为相同的字母必须放在一起。

示例 3:

输入:
"Aabb"输出:
"bbAa"解释:
此外,"bbaA"也是一个有效的答案,但"Aabb"是不正确的。
注意'A'和'a'被认为是两种不同的字符。

示例代码1:

class Solution(object):def frequencySort(self, s):""":type s: str:rtype: str"""dict1 = {}for i in s:if i in dict1:dict1[i] += 1else:dict1[i] = 1dict_sort = sorted(dict1.items(), key=lambda item:item[1], reverse=True)s = ''for i in dict_sort:s += i[0]*i[1]return s

示例代码2:

class Solution(object):def frequencySort(self, s):""":type s: str:rtype: str"""li = []for i, j in Counter(s).items():li.append([i, j])sort_li = sorted(li, key=lambda x: x[1], reverse=True)return ''.join([i*j for i, j in sort_li])

根据字符出现频率排序相关推荐

  1. LeetCode Algorithm 451. 根据字符出现频率排序

    451. 根据字符出现频率排序 Ideas Python解法:用个计数器,然后遍历计数器把相应字符乘以出现次数拼接起来就可以了. Code Python from collections import ...

  2. c++ list排序_LeetCode.451-根据字符出现频率排序

    根据字符出现频率排序 力扣​leetcode-cn.com 给定一个字符串,请将字符串里的字符按照出现的频率降序排列. 参考了评论区 Felix8bit 的答案 解题思路: 先根据每个词出现的概率进行 ...

  3. LeetCode中等题之根据字符出现频率排序

    题目 给定一个字符串,请将字符串里的字符按照出现的频率降序排列. 示例 1: 输入: "tree" 输出: "eert" 解释: 'e'出现两次,'r'和't' ...

  4. leetcode 451. 根据字符出现频率排序

    给定一个字符串,请将字符串里的字符按照出现的频率降序排列. 示例 1:输入: "tree"输出: "eert"解释: 'e'出现两次,'r'和't'都只出现一次 ...

  5. LeetCode 451 根据字符出现频率排序

    题目描述 给定一个字符串,请将字符串里的字符按照出现的频率降序排列. 题解 桶排序 代码 class Solution { public:string frequencySort(string s) ...

  6. LeetCode 451. 根据字符出现频率排序(Sort Characters By Frequency)

    题目描述: 给定一个字符串,请将字符串里的字符按照出现的频率降序排列. 示例 1: 输入: "tree"输出: "eert"解释: 'e'出现两次,'r'和't ...

  7. Leetcode 451. 根据字符出现频率排序 解题思路及C++实现

    解题思路: 先使用unordered_map对字符串s中字符,进行频数统计: 再使用最大堆,对unorder_map进行排序: 接着将排序结果存在结果字符串res中. class Solution { ...

  8. LeetCode 451. 根据字符出现频率排序(map+优先队列)

    1. 题目 给定一个字符串,请将字符串里的字符按照出现的频率降序排列. 输入: "tree"输出: "eert" 2. 优先队列解题 先用map统计字符出现次数 ...

  9. 451. 根据字符出现频率排序golang

    官解 func frequencySort(s string) string {charMap := make(map[rune]int)arr := make([]string, len(s))fo ...

最新文章

  1. 一个点到多边形顶点距离相同_走进高维空间——所有点之间的距离都相等!奇妙、疯狂、不可思议...
  2. [转载]秀脱linux实战笔记linux-kernel-3.0.3实战篇
  3. 计算机组成原理——概述2
  4. app.vue里使用data_Yeoman自定义Generator使用案例及Plop的使用
  5. 查看Linux 下某个程序的内存情况
  6. Python基础语法知识点汇集
  7. 《大数据技术原理与应用》(第三章 HDFS 课后答案)
  8. Linux中安装JDK并配置环境变量
  9. SosoApi,编辑Swagger UI的神器
  10. linux shell写cgi,shell写cgi脚本
  11. 阿里云海外云服务器5折起,新老用户均可选购(免备案)
  12. 判断一个数是否是素数的 n 多种方法
  13. 三分之一的程序猿之创业组队与打怪升级
  14. Docker的降维打击是怎么利用天时地利人和的?看这一篇就够了
  15. 强人工智能基本问题:自上而下还是自下而上?
  16. echarts设置x轴字体不同颜色
  17. 《Java 后端面试经》Java 基础篇
  18. 自动增益控制电路(AGC)
  19. 开放式办公环境真是个糟糕的做法
  20. 视觉人机器视觉培训团队-对机器视觉工程师发出严重警告

热门文章

  1. 基于微软开源深度学习算法,用 Python 实现图像和视频修复
  2. Python 的一万种用法:制作 Web 可视化页面
  3. 图模型+Bert香不香?完全基于注意力机制的图表征学习模型Graph-Bert
  4. 有奖评选 | 2020年的AI技术公开课,你想听到哪些干货?
  5. 全球超2万名开发者调研:Python 3渗透率至84%
  6. 立志打破日企垄断,ISP要被取代了吗?
  7. 奇点汽车打算明年推L3自动驾驶,不用激光雷达
  8. 春节囤货清单 | 15篇近期值得读的AI论文
  9. 继国务院后,上海也发布人工智能发展意见,2020年产业规模超千亿
  10. 可怕!Facebook竟能识别出性工作者!你怎么看?