Implementation of various data structures in C++ for practice.
These instructions will get you a copy of the project up and running on your local machine. Be sure to see how the project is structured down below.
> A modern C++ compiler
> Visual Studio 2019 (comes with MSVC Compiler as part of the Desktop Development for C++ module)
The project and the solution files were made for Visual Studio 2019. However, the code is standard C++ and any compiler should work.
- Clone the repo
git clone https://github.com/TheSherlockHomie/dataStructures.git
cd dataStructures
- Open the solution file in Visual Studio
- Choose the project you want to run. Right click and select 'build'
- Run the compiled executable
You'll find directories for various data structures (Graphs, Binary Search Trees etc) in the root of the repository. Navigating to a directory might lead to several subdirectories containing various different implementations of said data structure OR a cpp and various VS specific peoject files. The cpp files can directly be compiled into an executable regardless of platform. However, to use the project files, Visual Studio is required.
There is a .sln
file at the root of the repository. This solution file contains several different projects for implementations of the data structures. To work with a particular data structure, select the respective project and open the source .cpp
file. (Make sure to select the show all files
button in the solution explorer to actually see the directories in the project)
Visual Studio is currently set to store all compiled binaries in $(Project Directory)/bin
, and all intermediate files in $(Project Directory)/bin-int
. If you add a new project, make sure they follow these guidelines.
This above is how the repository is structured for now. Suggestions for better structuring are welcomed. Also, support for a build system like premake or cmake is planned. Kindly open an issue or see contributing.md for suggestions/contributions.
Please read contributing.md for details.
Initial work - TheSherlockHomie
See also the list of contributors.
This project is licensed under the MIT License - see the LICENSE.md file for details
Problem statements have been taken from some websites. In such cases, full credit and copyright for that part of the file goes to their respective owners.