有一个名为
例如:
如果我们将
Company
的类,它具有引用另一个 Company
实例的能力来表示 parent(父组织)
。 假设有四个公司 c1
,c2
,c3
和c4
,其中c2
,c3
,c4
的上级公司设置为c1
。例如:
public class Company {
public Company parent;
public Company() { }
public Company(Company parent) {
this.parent = parent;
}
public static void main(String[] args) {
Company c1 = new Company();
Company c2 = new Company(c1);
Company c3 = new Company(c1);
Company c4 = new Company(c1);
}
如果我们将
c2
设置为c1
的母公司:c1.parent = c2;
那么它将在公司层次结构中创建一个圈复杂度无限循环,我们必须避免在我们的系统中出现这种情况。
我们希望能够在运行时检测到这一点。在上述情况下,检查同一类对象的圈复杂度的最佳算法是什么?