title: Binary Tree Insert Algorithm
body: <p>I recently finished implementing a Binary search tree for a project I was working on. It went well and I learned a lot. However, now I need to implement a regular Binary Tree... which for some reason has me stumped.</p>
  
  <p>I'm looking for a way to do my InsertNode function..</p>
  
  <p>normally in a BST you just check if data &lt; root then insert left and vice versa. However, In a normal Binary tree, it is just filled from left to right, one level at a time..</p>
  
  <p>could anyone help me implement a function that just adds a new Node to the Binary tree from left to right in no specific order?</p>
  
  <p>Here's my Insert for a BST:</p>
  
  <pre><code>void Insert(Node *&amp; root, int data)
  {
    if(root == nullptr)
    {
      Node * NN = new Node;
      root = NN;
    }
    else
    {
      if(data &lt; root-&gt;data)
      { 
        Insert(root-&gt;left, data);
      }
      else
      {
        Insert(root-&gt;right, data);
      }
    }
  }
  </code></pre>