根据字符出现频率排序
给定一个字符串,请将字符串里的字符按照出现的频率降序排列。
示例 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])
根据字符出现频率排序相关推荐
- LeetCode Algorithm 451. 根据字符出现频率排序
451. 根据字符出现频率排序 Ideas Python解法:用个计数器,然后遍历计数器把相应字符乘以出现次数拼接起来就可以了. Code Python from collections import ...
- c++ list排序_LeetCode.451-根据字符出现频率排序
根据字符出现频率排序 力扣leetcode-cn.com 给定一个字符串,请将字符串里的字符按照出现的频率降序排列. 参考了评论区 Felix8bit 的答案 解题思路: 先根据每个词出现的概率进行 ...
- LeetCode中等题之根据字符出现频率排序
题目 给定一个字符串,请将字符串里的字符按照出现的频率降序排列. 示例 1: 输入: "tree" 输出: "eert" 解释: 'e'出现两次,'r'和't' ...
- leetcode 451. 根据字符出现频率排序
给定一个字符串,请将字符串里的字符按照出现的频率降序排列. 示例 1:输入: "tree"输出: "eert"解释: 'e'出现两次,'r'和't'都只出现一次 ...
- LeetCode 451 根据字符出现频率排序
题目描述 给定一个字符串,请将字符串里的字符按照出现的频率降序排列. 题解 桶排序 代码 class Solution { public:string frequencySort(string s) ...
- LeetCode 451. 根据字符出现频率排序(Sort Characters By Frequency)
题目描述: 给定一个字符串,请将字符串里的字符按照出现的频率降序排列. 示例 1: 输入: "tree"输出: "eert"解释: 'e'出现两次,'r'和't ...
- Leetcode 451. 根据字符出现频率排序 解题思路及C++实现
解题思路: 先使用unordered_map对字符串s中字符,进行频数统计: 再使用最大堆,对unorder_map进行排序: 接着将排序结果存在结果字符串res中. class Solution { ...
- LeetCode 451. 根据字符出现频率排序(map+优先队列)
1. 题目 给定一个字符串,请将字符串里的字符按照出现的频率降序排列. 输入: "tree"输出: "eert" 2. 优先队列解题 先用map统计字符出现次数 ...
- 451. 根据字符出现频率排序golang
官解 func frequencySort(s string) string {charMap := make(map[rune]int)arr := make([]string, len(s))fo ...
最新文章
- 一个点到多边形顶点距离相同_走进高维空间——所有点之间的距离都相等!奇妙、疯狂、不可思议...
- [转载]秀脱linux实战笔记linux-kernel-3.0.3实战篇
- 计算机组成原理——概述2
- app.vue里使用data_Yeoman自定义Generator使用案例及Plop的使用
- 查看Linux 下某个程序的内存情况
- Python基础语法知识点汇集
- 《大数据技术原理与应用》(第三章 HDFS 课后答案)
- Linux中安装JDK并配置环境变量
- SosoApi,编辑Swagger UI的神器
- linux shell写cgi,shell写cgi脚本
- 阿里云海外云服务器5折起,新老用户均可选购(免备案)
- 判断一个数是否是素数的 n 多种方法
- 三分之一的程序猿之创业组队与打怪升级
- Docker的降维打击是怎么利用天时地利人和的?看这一篇就够了
- 强人工智能基本问题:自上而下还是自下而上?
- echarts设置x轴字体不同颜色
- 《Java 后端面试经》Java 基础篇
- 自动增益控制电路(AGC)
- 开放式办公环境真是个糟糕的做法
- 视觉人机器视觉培训团队-对机器视觉工程师发出严重警告