简单
技术面试0 次浏览拼多多的商品评论系统需要统计每个商品的评论数量,给定一个包含商品 ID 和评论内容的列表,如何高效地统计每个商品的评论数?请用 Java 实现。
拼多多算法工程师
Java数据统计商品评论
答题要点
推荐使用哈希表来解决此问题。关键要点如下:1. 创建一个`HashMap`,键为商品 ID,值为该商品的评论数量。2. 遍历商品 ID 和评论内容的列表,对于每个商品 ID,检查它是否已经在`HashMap`中。如果存在,则将对应的值加 1;如果不存在,则将该商品 ID 作为键,值初始化为 1 加入`HashMap`。3. 遍历结束后,`HashMap`中存储的就是每个商品的评论数量。示例思路:可以这样实现,先创建一个`HashMap<Integer, Integer>`,然后遍历列表,使用`containsKey`方法检查商品 ID 是否存在,根据情况更新值,最后返回这个`HashMap`。代码大致如下:`import java.util.HashMap; public class CommentCounter { public static HashMap<Integer, Integer> countComments(int[] productIds) { HashMap<Integer, Integer> commentCount = new HashMap<>(); for (int id : productIds) { commentCount.put(id, commentCount.getOrDefault(id, 0) + 1); } return commentCount; } }`