算法设计
某大型项目由n个组件N1,
N2……Nn构成,每个组件都可以独立编译,但是某些组件的编译依赖于其它组件(即某些组件只能在其它组件编译完成后才能编译),设计算法给出统计过程。思路:拓扑排序算法
语言伪代码:
(1)初始化栈S(2)找出所有可执行的组件w,w进栈(3)while(栈S非空) v=栈顶元素出栈; if(v未被编译) 编译v,并且输出v; foreach(更新与v相关的组件依赖参数) if(x=组件可被编译) x进栈;
C伪码:
void compileModel(Model *model){ Model *w,*v; Initial(Stack); while(i