Skip to content

Commit ebf333a

Browse files
committed
Fixed doctests
1 parent 712c35e commit ebf333a

File tree

1 file changed

+26
-6
lines changed

1 file changed

+26
-6
lines changed

graphs/deep_clone_graph.py

+26-6
Original file line numberDiff line numberDiff line change
@@ -16,16 +16,36 @@ def __init__(self, value: int = 0, neighbors: list | None = None) -> None:
1616
self.value = value
1717
self.neighbors = neighbors or []
1818

19+
def __repr__(self):
20+
return f"Node({self.value}, {self.neighbors})"
21+
1922

2023
def clone_graph(node: Node | None) -> Node | None:
2124
"""
2225
This function returns a clone of a connected undirected graph.
23-
>>> clone_graph(Node(1))
24-
Node(1)
25-
>>> clone_graph(Node(1, [Node(2)]))
26-
Node(1, [Node(2)])
27-
>>> clone_graph(None)
28-
None
26+
>>> node1 = Node(1)
27+
>>> node2 = Node(2)
28+
>>> node3 = Node(3)
29+
>>> node4 = Node(4)
30+
>>> node1.neighbors = [node2, node4]
31+
>>> node2.neighbors = [node1, node3]
32+
>>> node3.neighbors = [node2, node4]
33+
>>> node4.neighbors = [node1, node3]
34+
>>> clone1 = clone_graph(node1)
35+
>>> clone1.value
36+
1
37+
>>> clone2 = clone1.neighbors[0]
38+
>>> clone2.value
39+
2
40+
>>> clone4 = clone1.neighbors[1]
41+
>>> clone4.value
42+
4
43+
>>> clone3 = clone2.neighbors[1]
44+
>>> clone3.value
45+
3
46+
>>> clone = clone_graph(None)
47+
>>> clone is None
48+
True
2949
"""
3050
if not node:
3151
return None

0 commit comments

Comments
 (0)