title: How to deep copy a Binary Tree?
body: <p>I would like using my own Node class to implement tree structure in Java. But I'm confused how to do a deep copy to copy a tree.</p>
  
  <p>My Node class would be like this:</p>
  
  <pre><code>public class Node{
  private String value;
  private Node leftChild;
  private Node rightChild;
  ....
  </code></pre>
  
  <p>I'm new to recursion, so is there any code I can study? Thank you!</p>