题目描述

一个系统的若干模块间存在互相依赖的关系。 如果A模块调用了B模块的接口,那么成为A依赖B,记为A-->B

如果A-->B,B-->A。那么称A和B模块都存在循环依赖。

如果A-->B,B-->C,C-->D, D-->B。那么BCD存在循环依赖,A不存在循环依赖,依次类推。

先输入若干模块之间的关系,判断某模块是否存在循环依赖。

模块的 ID范围 0~0xffffffff

调用者保证相同的关系不重复输入。

实现接口

//接口功能:添加依赖关系

//说明:ModuleId 模块依赖 DependModuleId 调用者保证ModuleId不等于DependModuleId

void AddDependency(unsigned int ModuleId, unsigned int DependModuleId);

//接口功能:判断模块是否存在依赖关系

//说明:如果模块不存在返回false

bool MouldeIsCycularDependency(unsigned int ModuleId);

//接口功能:清空模块数据

void clear(void);

输入描述:

模块间关系,注意最后一行没有','结尾输出描述:

模块是否循环循环依赖,注意最后一行没有','结尾

示例1

输入

{0x00, 0x01},

{0x02, 0x03},

{0x03, 0x04}

输出

{0x00, false},

{0x01, false},

{0x02, false},

{0x03, false},

{0x04, false}

results matching ""

    No results matching ""