Skip to content

My own implementation of data structures and algorithms in std::

Notifications You must be signed in to change notification settings

aryan-gupta/libari

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

libari

Throughout my programming career, I needed to understand how a data structure worked or how an algorithm worked. I originally created this repository because I was going to be taking a data structure class at my university, little did I know that this would teach me alot about template programming, SFINAE, and other C++ concepts. Later on, I realed that I had put alot of hours into this repo and it was a big mess, a bunch of header files thrown together. So I decided to reorginize the repo and give it an actual name. Thus was born libari.

What is libari?

libari is a number of header files that serves the purpose of teaching me how various things in std:: namespace work. If you ever take a peek into the actual code in the vector header you will quickly realize that it very cryptographic and there nameing scheme is obnixious for new reader. libari is a simple implementation of those functions and classes.

How to use libari

Don't.

I will repeat, do not use libari in profuction code. The purpose of libari is for educational purposes only. If you need to use somthing in here, refer to the boost librarty or the std:: library.

That being said, if you are an educator or someone who is curious, by all means feel free to read the code in this repository, feel free to use this code in your classes but please mention me and my github account.

However, if you want to play around with the code, fork the repo and play around with it. If you find a bug or a better way to do somthing, feel free to submit a pull request .

Versions

There was this annecdote that one of my friends told me: He was working on a library, he started out writing the library and near the middle of finishing it, he went back to to the code he wrote when he first started the library, at that point he realized somthing. He had learned so much from writing the library he could see how badly he wrote the code. When I started out writing out the code for this, I was a n00b and was just stating out with C++ I took a break from this repo to work on other stuff, when I came back to working on this, I realized how badly I wrote it so I scratched it and started anew. In the repository there is the "old version" and the current version.

Licence

Please see LICENCE.md for licence information.

Acknowledgments

  • Boost libraries
  • cppreference.com
  • Any one that has slipped my mind

About

My own implementation of data structures and algorithms in std::

Resources

Stars

Watchers

Forks

Packages

No packages published