面试题-DAG 有向无环图

有向无环图用于解决前后依赖问题,在Apollo中用于各个组件的依赖管理。

在算法面试中,有很多相关题目

  • 比如排课问题,有先修课
  • 比如启动问题,需要先启动1,才能启动2

概念

面试题-DAG 有向无环图_第1张图片

顶点:

图中的一个点,比如顶点 1,顶点 2。
边:连接两个顶点的线段叫做边,edge。

入度:

代表当前有多少边指向它。

解题思路

以课程表问题为例,
需要先修的课程在前,作为key,后修的课程在后,作为value
先构建有向无环图
然后再进行深度或广度优先遍历
所有节点都能遍历到,就是所有课程都能学完

你可能感兴趣的:(自动驾驶,c++,笔记,经验分享,面试)