题解 | 小红书推荐系统

小红书推荐系统

https://www.nowcoder.com/practice/e5b39c9034a84bf2a5e026b2b9b973d0

import java.util.*;
import java.util.stream.Collectors;
import java.util.stream.Stream;

public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        LinkedHashMap<String, Integer> linkedHashMap = new LinkedHashMap<>(16, 0.75F,
                true);
        while (in.hasNext()) {
            String a = in.next();
            linkedHashMap.put(a, linkedHashMap.getOrDefault(a, 0) + 1);
        }
        in.nextLine();
        Set<Map.Entry<String, Integer>> entries = linkedHashMap.entrySet();
        ArrayList<Map.Entry<String, Integer>> list = new ArrayList<>(entries);
        List<Map.Entry<String, Integer>> collect = list.stream().sorted(
        new Comparator<Map.Entry<String, Integer>>() {
            @Override
            public int compare(Map.Entry<String, Integer> o1,
                               Map.Entry<String, Integer> o2) {
                int i = o1.getValue() - o2.getValue();
                if (i != 0) {
                    return -i;
                }
                return o1.getKey().compareTo(o2.getKey());
            }
        }).collect(Collectors.toList());
        collect.stream().filter(e->e.getValue() >= 3).map(e->e.getKey()).forEach(
            System.out::println);
    }
}

全部评论

相关推荐

累死的一条狗:***一人顶10人那你给我发10个人的工资总和吗
点赞 评论 收藏
分享
02-14 12:40
门头沟学院 Java
程序员花海:1.面试要求必须Java笔试不一定 2.难度对等秋招 远超于日常实习是因为同一批次且转正很多 竞争压力大 3.第一个加点指标,上线了就把接口性能加上去 使用本地缓存这个不算亮点 只是技术选型,要把为什么采用这个和背后的思考写出来而不是单纯堆叠技术没意义 4.八股要一直看 很容易忘记 5.拼团交易这个老问题 堆积技术 另外建议你把奖项合并到教育背景 没必要拆出来放最后
我的简历长这样
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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