我有下面的地图

com1 -> [user1, 100, [com2,com3]]
com2 -> [user3, 100, []]
com3 -> [user2, 100, [com4]]
com4 -> [user1, 100, [com5]]
com5 -> [user2, 100, []]


在此,每个条目均指代注释,每个列表的索引2是该地图条目的子注释列表。如何删除直接和间接与com1相关的所有注释?

最佳答案

这是使用DFS删除此类注释的示例

public deleteEntry(String entry) {
    if (map.containsKey(entry)) {
        Comment comment = map.get(entry);
        map.remove(entry);
        if (comment.getChildren() != null) {
            for(int i = 0; i < comment.getChildren().size(); i++) {
                deleteEntry(comment.getChildren().get(i));
            }
        }
    }
}

10-07 13:05