Advertisement
Guest User

Untitled

a guest
Apr 25th, 2018
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.95 KB | None | 0 0
  1. def GraphColoring(self, Edges):
  2.     print(Edges)
  3.     result = {}
  4.     colors = ['red', 'blue', 'yellow', 'green', 'orange', 'springgreen', 'lime', 'olive', 'indigo', 'fuchsia']
  5.  
  6.     def SortEdges():
  7.         sort_list = {}
  8.         for key in Edges:
  9.             sort_list[key] = len(Edges[key])
  10.         sort2 = sorted(sort_list.items(),key=lambda x: x[1], reverse=True)
  11.  
  12.         return sort2
  13.  
  14.     def colorize():
  15.         n = 0
  16.  
  17.         def removeColor():
  18.             for color in colors:
  19.                 if color not in stackColor: return color
  20.             color = colors[n+1]
  21.             colors.append(color)
  22.             return color
  23.  
  24.         for key in sort_list:
  25.             stackColor = []
  26.             for key2 in Edges[key[0]]:
  27.                 if key2 in result: stackColor.append(result[key2])
  28.             color = removeColor()
  29.             result[key[0]] = color
  30.         return result
  31.  
  32.     sort_list = SortEdges()
  33.     return colorize()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement