{"id":26953266,"url":"https://github.com/icliberen/binary-heap-trees","last_synced_at":"2025-04-03T01:29:26.253Z","repository":{"id":282779476,"uuid":"949628395","full_name":"icliberen/binary-heap-trees","owner":"icliberen","description":"Binary Search Tree, Balanced Binary Tree and Heap Implementations in C++","archived":false,"fork":false,"pushed_at":"2025-03-31T11:57:00.000Z","size":45,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-31T12:34:35.348Z","etag":null,"topics":["binarysearchtree","binarytree","binarytrees","cpp","heap","heapsort","heapsort-algorithm","maxheap","maxheaps","minheap","minheap-structure"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/icliberen.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-03-16T21:30:31.000Z","updated_at":"2025-03-31T11:57:04.000Z","dependencies_parsed_at":null,"dependency_job_id":"156e4fe7-a8fb-4601-963d-986c0b7bf486","html_url":"https://github.com/icliberen/binary-heap-trees","commit_stats":null,"previous_names":["icliberen/binary-trees"],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/icliberen%2Fbinary-heap-trees","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/icliberen%2Fbinary-heap-trees/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/icliberen%2Fbinary-heap-trees/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/icliberen%2Fbinary-heap-trees/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/icliberen","download_url":"https://codeload.github.com/icliberen/binary-heap-trees/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246921399,"owners_count":20855256,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["binarysearchtree","binarytree","binarytrees","cpp","heap","heapsort","heapsort-algorithm","maxheap","maxheaps","minheap","minheap-structure"],"created_at":"2025-04-03T01:29:25.809Z","updated_at":"2025-04-03T01:29:26.251Z","avatar_url":"https://github.com/icliberen.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Binary Search Tree, Balanced Binary Tree and Heap Implementations in C++\n\nThis project demonstrates multiple tree-based data structures in C++:\n\n- **Binary Search Tree (BST):**  \n  - Supports insertion, deletion and a visual display (both balanced and level order).\n  - Displays the maximum element along with its level.\n\n- **Balanced Binary Tree:**  \n  - Uses a balanced insertion method.\n  - Allows deletion of the last inserted element.\n  - Displays the tree and checks properties such as full, complete and perfect.\n\n- **Heap:**  \n  - Implements both MinHeap and MaxHeap functionalities.\n  - Visualizes the heap as a tree with `/` and `\\` representing parent-child connections.\n  - Allows dynamic switching between MinHeap and MaxHeap even after creation.\n\n---\n\n## Features\n\n- **Insertion \u0026 Deletion:** Easily add and remove elements in each data structure.\n- **Visual Display:**  \n  - Structured top-down visualization for both trees and heap.\n  - Level order (BFS) traversal for BST.\n- **Heap Type Switching:**  \n  - Change between min-heap and max-heap on the fly.\n- **Tree Property Analysis:** Check if binary trees are full, complete or perfect.\n- **Robust Input Handling:** Ensures only valid integer inputs are accepted.\n\n---\n\n## Prerequisites\n\n- **For Building from Source:**\n  - [Visual Studio](https://visualstudio.microsoft.com/) (2019 or later with C++ development)\n  - Alternatively, a C++ compiler such as `g++` (for command-line builds)\n\n- **For Running Pre-Built Releases:**\n  - No development tools required, just the executable for windows operating system\n\n---\n\n## How to Run the Application\n\n### Using Visual Studio\n\n1. **Clone the Repository:**\n   ```bash\n   git clone https://github.com/icliberen/binary-heap-trees.git\n\n### Using terminal\n\n1. **Clone the Repository:**\n   ```bash\n   git clone https://github.com/icliberen/binary-heap-trees.git\n\n2. **Compile the Code:**\n   ```bash\n   g++ -o binary_heap_trees main.cpp\n\n4. **Run the Executable:**\n   \n   On Linux or macOS:\n   ```bash\n   ./binary_heap_trees\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ficliberen%2Fbinary-heap-trees","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ficliberen%2Fbinary-heap-trees","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ficliberen%2Fbinary-heap-trees/lists"}