homework
Topic sourceMr_RightMen讲的太棒了 我的小笔记:
什么是拓扑排序:
- 从DAG途中选择一个没有前驱(即入度为0)的顶点并输出
- 从图中删除该顶点和所有以它为起点的有向边。
- 重复1和2直到当前DAG图为空或当前途中不存在无前驱的顶点为止。后一种情况说明有向图中必然存在环。
python多重继承:
- 把继承关系先构成一张图
- 利用拓扑排序的方法输出拓扑顺序,并列关系时遵循取最左原则
- python继承顺序遵循C3算法,只要在一个地方找到了所需的内容,就不再继续查找
Mr_RightMen
关于多重继承,其实,只要了解拓扑排序,就能很清楚的指导多重继承的查询顺序了,从入度为0的位置起,剪掉入度为0相关边,然后接着找下一个入度为0的位置,如此往复到最后,遇到有多个入度为0的时候,按最左原则取就行了,大体上就是这样了
有兴趣的话,可以去看看我做的关于这个的笔记,应该能了解一点
python多重继承之拓扑排序