>>740はノードが二個のグラフのつもりなんだろうけど、

x = Node 0 [Node 1 [x]]
z = Node 0 [Node 1 [Node 0 [Node 1 [z]]]]

この二つが全く同じデータになっちゃうんだからおかしいよね
最低でもノードの同一性判定は必要(ノードの持つ値が同一というのではなく)