We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent a042a13 commit 9db6994Copy full SHA for 9db6994
1 file changed
bafna.py
@@ -2,11 +2,18 @@
2
3
4
def cleanup(G):
5
- while True:
6
- to_remove = [node for node in G.nodes if G.degree(node) <= 1]
7
- if len(to_remove) == 0:
8
- break
9
- G.remove_nodes_from(to_remove)
+ queue = [n for n in G.nodes if G.degree(n) <= 1]
+
+ while len(queue) > 0:
+ node = queue.pop()
+ if not G.has_node(node):
10
+ continue
11
12
+ neighbors = list(G.neighbors(node))
13
+ G.remove_node(node)
14
+ for neighbor in neighbors:
15
+ if G.degree(neighbor) <= 1:
16
+ queue.append(neighbor)
17
18
return G
19
0 commit comments