791. 自定义字符串排序

Posted 心脏dance

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了791. 自定义字符串排序相关的知识,希望对你有一定的参考价值。

题目链接:力扣

思路:算是个简单题吧,中等有点过分了。用 map 通过 order 字符串重新定义下每个字符的大小关系,然后对 s 按照记录的大小关系排序即可。map 里面没有的字符,默认大小为任意一个值就可以了(因为可以在任意一个位置),我这里写的默认值是 0。

上代码:

class Solution 
    fun customSortString(order: String, s: String): String 
        val orderMap = HashMap<Char, Int>()
        for (i in order.indices) 
            orderMap[order[i]] = i
        
        return String(s.toList().sortedWith(Comparator  x1: Char, x2: Char ->
            (orderMap[x1] ?: 0) - (orderMap[x2] ?: 0)
        ).toCharArray())
    

以上是关于791. 自定义字符串排序的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode[791] 自定义字符串排序

[leetcode]791. Custom Sort String自定义排序字符串

leetcode-791. 自定义字符串排序

LeetCode 0791. 自定义字符串排序

791. Custom Sort String - LeetCode

按自定义字典顺序对字符串进行排序