Skip to content

YuranyUlchur/holbertonschool-binary_trees

Repository files navigation

C - Binary trees

What is Binary Tree Data Structure?

img

Binary Tree is defined as a tree data structure where each node has at most 2 children. Since each element in a binary tree can have only 2 children, we typically name them the left and right child.

A Binary tree is represented by a pointer to the topmost node (commonly known as the “root”) of the tree. If the tree is empty, then the value of the root is NULL. Each node of a Binary Tree contains the following parts:

  • Data
  • Pointer to parent
  • Pointer to left child
  • Pointer to right child

geeksforgeeks.org


Binary-tree


Description

  • tests/ - Main functions provided by Holberton School to test the files.
  • binary_trees.h - Header file with function prototypes and with libraries.
  • binary_tree_print.c - Function that prints a binary tree.

Code Style

Betty Style was implemented for all files.

Tasks

Files / Tasks Description
0-binary_tree_node.c Function that creates a binary tree node
1-binary_tree_insert_left.c Function that inserts a node as the left-child of another node
2-binary_tree_insert_right.c Function that inserts a node as the right-child of another node
3-binary_tree_delete.c Function that deletes an entire binary tree
4-binary_tree_is_leaf.c Function that checks if a node is a leaf
5-binary_tree_is_root.c Function that checks if a given node is a root
6-binary_tree_preorder.c Function that goes through a binary tree using pre-order traversal
7-binary_tree_inorder.c Function that goes through a binary tree using in-order traversal
8-binary_tree_postorder.c Function that goes through a binary tree using post-order traversal
9-binary_tree_height.c Function that measures the height of a binary tree
10-binary_tree_depth.c Function that measures the depth of a node in a binary tree
11-binary_tree_size.c Function that measures the size of a binary tree
12-binary_tree_leaves.c Function that counts the leaves in a binary tree
13-binary_tree_nodes.c Function that counts the nodes with at least 1 child in a binary tree
14-binary_tree_balance.c Function that measures the balance factor of a binary tree
15-binary_tree_is_full.c Function that checks if a binary tree is full
16-binary_tree_is_perfect.c Function that checks if a binary tree is perfect
17-binary_tree_sibling.c Function that finds the sibling of a node
18-binary_tree_uncle.c Function that finds the uncle of a node

Authors

  • Yurany Ulchur github
  • Felipe Villamizar github

About

Binary trees project for Holberton

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages