/binary_trees

Binary trees

Primary LanguageC

Binary Trees

Description

In computer science, various data structures help in arranging data in different forms. Among them, trees are widely used abstract data structures that simulate a hierarchical tree structure. A tree usually has a root value and subtrees that are formed by the child nodes from its parent nodes. Trees are non-linear data structures.

A binary tree is a tree-type non-linear data structure with a maximum of two children for each parent. Every node in a binary tree has a left and right reference along with the data element. The node at the top of the hierarchy of a tree is called the root node. The nodes that hold other sub-nodes are the parent nodes.

A parent node has two child nodes: the left child and right child. Hashing, routing data for network traffic, data compression, preparing binary heaps, and binary search trees are some of the applications that use a binary tree.

This knowledge is applied to the solving of each task therein in this repository.

Requirements & Environment

  • Allowed editors: vi, vim, emacs.
  • All files will be compiled on Ubuntu 20.04 LTS using gcc, using the options -Wall -Werror -Wextra -pedantic -std=gnu89.
  • All files should end with a new line.
  • A README.md file, at the root of the folder of the project, is mandatory.
  • Coding Style;
    • Betty style. It will be checked using betty-style.pl and betty-doc.pl
  • Use of the standard library is not allowed.
  • The prototypes of all functions should be included in your header file called binary_trees.h.
  • No more than 5 functions per file.
  • The use of global variables is not allowed.
  • All header files should be include guarded

Authors & Credits

This is an ALX Holberton School project, it was done in a team of two people indicated below;