451. 根据字符出现频率排序golang
生活随笔
收集整理的這篇文章主要介紹了
451. 根据字符出现频率排序golang
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
官解
func frequencySort(s string) string {charMap := make(map[rune]int)arr := make([]string, len(s))for _,c := range s {charMap[c]++}for k,v := range charMap {arr[v - 1] += strings.Repeat(string(k), v)}r := ""for _,c := range arr {r = c + r}return r }自定義排序
package mainimport ("fmt""sort" )type IntSlice []runefunc (c IntSlice) Len() int {return len(c) } func (c IntSlice) Swap(i, j int) {c[i], c[j] = c[j], c[i] } func (c IntSlice) Less(i, j int) bool {return c[i] > c[j] }func frequencySort(s string) string {var test IntSlicetest = []rune(s)fmt.Println(test)sort.Sort(test)return s }func main() {fmt.Println( frequencySort("Aabb") )fmt.Println( frequencySort("tree") ) }總結(jié)
以上是生活随笔為你收集整理的451. 根据字符出现频率排序golang的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 影子特工剧情介绍
- 下一篇: 69. x 的平方根 golang