=======================
Exercise: Binary Tree
=======================

-----------------------
Binary Tree Problem
-----------------------

A binary tree is a tree-type data structure where every node has two
children (left and right). We will create a tree where each node stores
a value. For a given node N, all nodes in a N's left subtree contain
smaller values, and all nodes in N's right subtree will contain larger
values.

.. container:: source_include 140_smart_pointers/src/140_smart_pointers.rs :start-after://ANCHOR-types :end-before://ANCHOR-solution :code:rust

-----------------------
Binary Tree Main
-----------------------

Implement :rust:`new`, :rust:`insert`, :rust:`len`, and :rust:`has` for :rust:`Subtree`.

.. container:: source_include 140_smart_pointers/src/140_smart_pointers.rs :start-after://ANCHOR-main :end-before://ANCHOR-tests :code:rust

-----------------------
Binary Tree Solution
-----------------------

.. container:: source_include 140_smart_pointers/src/140_smart_pointers.rs :start-after://ANCHOR-solution :end-before://ANCHOR-main :code:rust
