题解 | #字符串排序#



import java.util.Scanner

fun main(args: Array<String>) {
    val `in` = Scanner(System.`in`)

    while (`in`.hasNextLine()) {
        val a = `in`.nextLine()
        val b = a.toCharArray()
        val list = mutableListOf<Pair<Int, Char>>()
        val indexes = mutableListOf<Int>()
        for (i in b.indices) {
            if (b[i].isLetter()) {
                indexes.add(i)
                list.add(Pair(i, b[i]))
            }

        }
        list.sortWith { o1, o2 ->
            val a2 = o1.second.toLowerCase().compareTo(o2.second.toLowerCase())
            if (a2 != 0) {


                a2
            } else {
                o1.first.compareTo(o2.first)

            }
        }
        for (i in indexes.indices) {


            b[indexes[i]] = list[(i)].second
        }
        println(String(b))
    }
}




https://www.nowcoder.com/practice/5190a1db6f4f4ddb92fd9c365c944584#kotlin#
全部评论

相关推荐

07-16 17:55
门头沟学院 Java
点赞 评论 收藏
分享
盖茨伯爵:一样兄弟,我从4月开始发到现在了,都三四百个了
无实习如何秋招上岸
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务