leetcode451
public class Solution {
public string FrequencySort(string s) {
var dic = new Dictionary<char, int>();
foreach (var c in s)
{
if (!dic.ContainsKey(c))
{
dic.Add(c, );
}
else
{
dic[c]++;
}
}
var list = dic.OrderByDescending(x => x.Value).ToList();
StringBuilder sb = new StringBuilder();
foreach (var l in list)
{
var cha = l.Key;
var times = l.Value;
while (times > )
{
sb.Append(cha);
times--;
}
}
return sb.ToString();
}
}
https://leetcode.com/problems/sort-characters-by-frequency/#/description
补充一个python的实现:
import collections class Solution:
def frequencySort(self, s: str) -> str:
count = collections.Counter(s)
li = sorted(count.items(), key=lambda d:d[], reverse = True)
result = ''
for i in range(len(li)):
result += li[i][] * li[i][]
return result
leetcode451的更多相关文章
- [Swift]LeetCode451. 根据字符出现频率排序 | Sort Characters By Frequency
Given a string, sort it in decreasing order based on the frequency of characters. Example 1: Input: ...
- c++如何按照map的value进行排序?
static bool cmp(pair<char, int> a , pair<char,int> b) { return a.second>b.second; //按 ...
随机推荐
- ubuntu下erlang man的安装
下载 http://www.erlang.org/download/otp_doc_man_17.1.tar.gz 找到erlang 安装目录 解压 otp_doc_man_17.1.tar.gz s ...
- [译]HIPAA要求的SSL/TLS等级
原文链接:https://luxsci.com/blog/level-ssl-tls-required-hipaa.html 原文发表时间:2015.1.13 本博文仅仅是上述原文的翻译,仅供研究参考 ...
- webdriver元素定位
#1 通过id定位 driver.find_element_by_id("pop_setting_save").click() #2 通过name定位 driver.find_el ...
- Cookie用法
//写入 protected void Button1_Click(object sender, EventArgs e) { HttpCookie cookie=new HttpCookie(&qu ...
- objectForKey与valueForKey在NSDictionary中的差异
从 NSDictionary 取值的时候有两个方法,objectForKey: 和 valueForKey:,这两个方法具体有什么不同呢? 先从 NSDictionary 文档中来看这两个方法的定义: ...
- 《DSP using MATLAB》示例9.2
代码: %% ------------------------------------------------------------------------ %% Output Info about ...
- c++深拷贝/浅拷贝
拷贝构造函数,是一种特殊的构造函数,它由编译器调用来完成一些基于同一类的其他对象的构建及初始化.其唯一的参数(对象的引用)是不可变的(const类型).此函数经常用在函数调用时用户定义类型的值传递及返 ...
- [深度学习]Python/Theano实现逻辑回归网络的代码分析
2014-07-21 10:28:34 首先PO上主要Python代码(2.7), 这个代码在Deep Learning上可以找到. # allocate symbolic variables for ...
- 1、Docker学习笔记
Docker是一个基于LXC 的高级容器引擎,源代码托管在 GitHub 上, 基于Go语言开发并遵从Apache 2.0协议开源.它是一个开发的平台,用来为开发者和系统管理员构建.发布和运行分布式应 ...
- 基于标准库的string类实现简单的字符串替换
感觉基本功还是不扎实,虽然能做些程序但是现在看来我还是个初学者(primer),试着完成习题结果还得修修改改. 废话不多说,实现功能很简单,<C++ Primer>9.5.2节习题. // ...