OKAMutableDirectedGraph 1.0.0

OKAMutableDirectedGraph 1.0.0

测试已测试
语言语言 Obj-CObjective C
许可 MIT
发布最后发布2015年5月

Oliver Atkinson 维护。



  • Oliver Atkinson

image

OKAMutableDirectedGraph 是 Objective-C 中有向图的实现。

OKAMutableDirectedGraph 最初是为了管理依赖而开发的,但它可以用于路径查找、排序、垃圾回收等更多功能。


示例用法

 NSString *a = @"a";
 NSString *b = @"b";
 NSString *c = @"c";

 OKAMutableDirectedGraph *graph = [[OKAMutableDirectedGraph alloc] init];

 for (NSString *job in @[ a, b, c ]) {
   [graph addNode:job];
 }

 [graph addEdgeFrom:c to:b];
 [graph addEdgeFrom:b to:a];

 NSMutableArray *sorted = [NSMutableArray array];

 do {

   NSArray *heads = graph.heads;

   for (NSString *job in heads) {
     [graph removeNode:job];
     [sorted addObject:job];
   }

 } while (graph.heads.count != 0);

 (lldb) sorted => @[ c, b, a ]

文档 & 研究

普林斯顿大学 - 有向图

联系方式

Oliver Atkinson

许可

OKAMutableDirectedGraph 在 MIT 许可下可用。有关更多信息,请参阅 LICENSE 文件。