Advertisement
Guest User

Untitled

a guest
Mar 30th, 2020
116
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.11 KB | None | 0 0
  1. import networkx as nx
  2. from random import randint, choice
  3.  
  4. # def random_edge():
  5.  
  6.  
  7. ''' We Begin '''
  8. numberNodes = 64
  9. maxDegree = 8
  10.  
  11. P = nx.Graph()
  12.  
  13. ''' Initialize numberNodes nodes '''
  14. for n in range(1,65):
  15.     P.add_node(n)
  16.  
  17. for n in range(1,1000):
  18.     a = randint(1,numberNodes)
  19.     b = randint(1,numberNodes)
  20.     while b == a:
  21.         b = randint(1,64)
  22.     if(P.degree(a) < maxDegree and P.degree(b) < maxDegree):
  23.        P.add_edges_from([(a, b)])
  24.     if(P.degree(a) <= (maxDegree - 2)):
  25.         random_edge = choice(list(P.edges()))
  26.         print("before {}".format(random_edge))
  27.         if a == random_edge[0] or a == random_edge[1]:
  28.             print("inside {}".format(random_edge))
  29.             # random_edge = choice(list(P.edges()))
  30.             # print("after {} {}".format(a, random_edge))
  31.         else:
  32.             P.remove_edge(random_edge[0], random_edge[1])
  33.             P.add_edges_from([(random_edge[0], a),(a, random_edge[1])])
  34.             print("correcto")
  35.  
  36. print(list(P.edges())[randint(1,len(list(P.edges()))-1)])
  37. print(choice(list(P.edges()))[1])
  38. print((P.degree(P.nodes())))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement