Metadata-Version: 2.1
Name: treefy
Version: 0.1
Summary: A dynamic tree library for algorithmic problem solving
Home-page: https://github.com/devenkapadia/treefy.git
Author: Deven Kapadia
Author-email: devenkapadia1@gmail.com
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.6
Description-Content-Type: text/markdown
License-File: LICENSE

# Treefy - A Binary Tree Library

Treefy is a simple yet flexible Python library designed to help you easily work with binary trees. It allows you to define custom functions and perform a variety of tree operations like insertion, traversal, height calculation, and more.

## Features

- **BinaryTree** class for working with binary trees.
- **TreeNode** class to represent individual nodes.
- **Custom function registration** allowing users to define and use custom functions.
- **Tree Operations**:
  - Preorder, Inorder, and Postorder traversals.
  - Level order traversal (breadth-first search).
  - Height calculation of the tree.
  - Drawing a textual representation of the tree.
- **Attach Subtree**: Attach a whole tree/subtree as a left or right child.
- **Support for DSA Problems**: You can register custom DSA functions like "maximum path sum" or "LCA" (Lowest Common Ancestor) and solve problems dynamically.

## Basic Usage

With this project, there is one test.py, which includes the usage of BinaryTree class, how to add nodes, traversals etc
In addition to that, there are two custom functions provided: Max Path Sum and LCA for your reference

## Installation

Clone the repository or download the source files and place them in your project directory. Alternatively, you can install it via pip (if the package is uploaded to PyPI):

```bash
pip install treefy
