小红的推荐系统

实现代码:

java 复制代码
public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String input = scanner.nextLine();
        
        // 分割单词
        String[] words = input.split(" ");
        
        // 统计频率
        Map<String, Integer> freqMap = new HashMap<>();
        for (String word : words) {
            freqMap.put(word, freqMap.getOrDefault(word, 0) + 1);
        }
        
        // 筛选并排序
        List<Map.Entry<String, Integer>> list = freqMap.entrySet().stream()
            .filter(entry -> entry.getValue() >= 3)
            .sorted((a, b) -> {
                // 频次高的在前
                if (!a.getValue().equals(b.getValue())) {
                    return b.getValue() - a.getValue();
                }
                // 频次相同则按字典序升序
                return a.getKey().compareTo(b.getKey());
            })
            .collect(Collectors.toList());
        
        // 输出
        for (Map.Entry<String, Integer> entry : list) {
            System.out.println(entry.getKey());
        }
    }
相关推荐
冰西瓜6002 小时前
贪心(一)——从动态规划到贪心 算法设计与分析 国科大
算法·贪心算法·动态规划
javachen__2 小时前
341-十道经典程序设计题目
数据结构·c++·算法
萧曵 丶2 小时前
JDK各版本新增特性详解
java·面试
natide2 小时前
表示/嵌入差异-7-间隔/边际对齐(Alignment Margin)
人工智能·深度学习·算法·机器学习·自然语言处理·知识图谱
毅炼2 小时前
hot100打卡——day08
java·数据结构·算法·leetcode·深度优先
a努力。3 小时前
国家电网Java面试被问:慢查询的优化方案
java·开发语言·面试
l1t3 小时前
DeepSeek总结的算法 X 与舞蹈链文章
前端·javascript·算法
gihigo19983 小时前
水声信号处理中DEMON谱分析的原理、实现与改进
算法·信号处理
歌_顿3 小时前
微调方法学习总结(万字长文!)
算法