我正在做一个任务,它需要一些图形,向图形添加一个额外的顶点,将新顶点作为源应用 Bellman Ford,然后使用将 Dijkstra 的所有对应用于图形。
正在使用的算法具有以下运行时间/空间要求:
添加额外的顶点 -- 运行时间:V -- 空格:V Bellman Ford 单源最短路径算法 -- 运行时间:EV -- 空格:V Dijkstra 的所有对最短路径算法 -- 运行时间:EV log V -- 空格:V
如果我在计算整个过程的大 O,我很难理解。每个程序都是单独运行的,并且输出从一个程序传送到另一个程序。我的想法是总算法的 Big-O 运行时间为:
O( V + EV + EV log V )这将简化为O( EV log V )
空间需求将以类似的方式计算。我在想这个正确吗?谢谢!