/ft_containers

The multiple available containers in C++ all have a very different usage. To make sure you understand them all, let's re-implement them!

Primary LanguageC++GNU General Public License v3.0GPL-3.0

πŸ“¦ STL Containers

GitHub last commit Repository size GitHub top language

Table of Contents
  1. About The Project
  2. Contributors
  3. Resources

πŸ€” About

ft_containers is a project of the mandatory part of the cursus. It's only made in C++ and was about recoding some containers from the STL.

In order to succeed, a good comprehension of how templates, iterators, containers and algorithms work was necessary. Of course, STL is not allowed. That means you cannot use <iterator> or even <utility>.

Here are the specificities of the five containers:

  • ➑️ Vector: a dynamic array that allows insertion at the end of the container. Elements can be easily access thanks with the corresponding index, but it's not the most optimal container if a lot of insertion / deletion are needed.
  • ➑️ List: a circular linked list (with a neutral node linking beginning and end of the list). Better than vector for inserting or deleting elements.
  • ➑️ Stack: a container adaptator (LIFO, last in first out).
  • ➑️ Queue: a container adaptator (FIFO, first in first out).
  • ➑️ Map: a sorted container using an AVL binary tree (auto-equilibrates itself to optimize the time to find a value in the tree), in order to store the datas like in a dictionnary (a key associated to its value).

Skills

  • Network & system administration
  • Rigor
  • Object-oriented programming

πŸ’ͺ Contributers

Abdulaziz Abduvakhobov
 42intra profile : aabduvak

Arbi Elmas
 42intra profile : arelmas

Γ–mer Faruk Γ–z
 42intra profile : ooz

πŸ‘¨β€πŸ’» Resources


"Buy Me A Coffee"