@@ -14,32 +14,26 @@ public class MColorer<T, C>
1414/// </summary>
1515public MColorResult < T , C > Color ( IGraph < T > graph , C [ ] colors )
1616{
17- var totalProgress = new Dictionary < IGraphVertex < T > , C > ( ) ;
17+ var progress = new Dictionary < IGraphVertex < T > , C > ( ) ;
1818
1919foreach ( var vertex in graph . VerticesAsEnumberable )
2020{
21- var progress = canColor ( vertex , colors ,
22- new Dictionary < IGraphVertex < T > , C > ( ) ,
23- new HashSet < IGraphVertex < T > > ( ) ) ;
24-
25- foreach ( var item in progress )
21+ if ( ! progress . ContainsKey ( vertex ) )
2622{
27- if ( ! totalProgress . ContainsKey ( item . Key ) )
28- {
29- totalProgress . Add ( item . Key , item . Value ) ;
30- }
23+ canColor ( vertex , colors ,
24+ progress ,
25+ new HashSet < IGraphVertex < T > > ( ) ) ;
3126}
32-
3327}
3428
35- if ( totalProgress . Count != graph . VerticesCount )
29+ if ( progress . Count != graph . VerticesCount )
3630{
3731return new MColorResult < T , C > ( false , null ) ;
3832}
3933
4034var result = new Dictionary < C , List < T > > ( ) ;
4135
42- foreach ( var vertex in totalProgress )
36+ foreach ( var vertex in progress )
4337{
4438if ( ! result . ContainsKey ( vertex . Value ) )
4539{