【问题标题】:Which data structure is best for this problem哪种数据结构最适合这个问题
【发布时间】:2021-03-17 15:18:46
【问题描述】:

有 n 个活动和 m 个学生。每个学生都可以做尽可能多的活动。我想找出最短的路径是两个学生之间。我需要专注于插入活动的时间:学生和找到两个学生之间最短路径的时间。 例子: 活动1:鲍勃、卡尔、安东尼、苏西、大卫 活动 2:鲍勃、曼尼、卡尔·贝瑟尼·布拉德 活动3:卡尔、克雷格、糖果

如果我想找到之间的最短路径 安东尼到克雷格 将是 Anthony-> Activity1-> Bob -> Activity2-> Carl-> Activity3-> Craig 首先插入这个然后查询最短路径的最佳数据结构是什么?我相信它是一个图表,但我将如何格式化它?

【问题讨论】:

标签: c++ algorithm data-structures graph shortest-path


【解决方案1】:

二分图是您的解决方案。 一部分用于学生,一部分用于任务。 只要您不需要任何索引,任务的插入就是 O(1),只需继续增加任务部分的索引即可。并且插入学生-任务关系也是 O(1)。 查找最小路径适用于BFSdijikstra

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-21
    • 1970-01-01
    • 1970-01-01
    • 2010-12-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多