//returns true if tree is valid after remove public bool removeNeighbour(Node node) { node.neighbours.Remove(this); neighbours.Remove(node); return isValid() && node.isValid(); }
//returns true if tree is valid after add public bool addNeighbour(Node node) { neighbours.AddLast(node); node.neighbours.AddLast(this); return isValid() && node.isValid(); }