题解 | #字符串排序#

字符串排序

https://www.nowcoder.com/practice/5190a1db6f4f4ddb92fd9c365c944584

import java.util.*;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        String str = in.nextLine();
        TreeMap<Character, StringBuilder> map = new TreeMap<>();
        for (char c : str.toCharArray()) {
            char d = Character.toLowerCase(c);
            if ('a' <= d && d <= 'z') {
                if (!map.containsKey(d)) {
                    map.put(d, new StringBuilder());
                }
                map.get(d).append(c);
            }
        }

        // 将已排序好的字母部分合并
        StringBuilder sb = new StringBuilder();
        for (Map.Entry<Character, StringBuilder> entry : map.entrySet()) {
           // System.out.println(entry.getKey() + "--" + entry.getValue());
            sb.append(entry.getValue());
        }
        for (int i = 0; i < str.toCharArray().length; i++) {
            char c = str.charAt(i);
            if (c >= 'a' && c <= 'z') {
                continue;

            } else if (c >= 'A' && c <= 'Z') {
                continue;
            } else {
                sb.insert(i, c);
            }
        }
        System.out.println(sb.toString());
    }
}

全部评论

相关推荐

程序员牛肉:你这简历有啥值得拷打的?在牛客你这种简历一抓一大把,也就是个人信息不一样而已。 关键要去找亮点,亮点啊,整个简历都跟流水线生产出来的一样。
点赞 评论 收藏
分享
肖先生~:那年秋招闯进一位少年,人们都清楚:成功对他来说只是时间问题
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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