.gitignore - add GitHub defaults for Java and Python
tree_zig_zag - commits of README, HINTS, and SOLUTION

This commit contains the README description of the problem, a HINTS file
full of hints for when a user has already attempted the problem for some
time and requires some advice, and a SOLUTION human-readable summary of
the solution.

It is useful to break up this information into different files to avoid
giving spoilers too early to users who are attempting to simulate
interview-like scenarios.
tree_zig_zag - generator - initial commit

A script that can generate a random BST that is not balanced. This is
useful because it is helpful to have at least one large input to make
sure that a user's solution isn't too time inefficient. However in this
particular case there's nothing better than O(n) time and O(n) space.
Such a script will probably come in handy for subsequent problems that
require unbalanced BSTs as test cases.
tree_zig_zag - tests - initial commit

Two examples from the README and a large example which is randomly
generated using a script commited in a previous commit and whose
solution is provided by the solutions in the same repo.
tree_zig_zag - solutions - initial commit of Java solution
tree_zig_zag - solutions - initial commit of Python solution
tree_zig_zag - update solution