Data Structures and Algorithms

Welcome

Hello and welcome to an open souce project created by shree1999! This project is designed to help beginner computer science students a place to learn and practice data structures and algorithms common to computer science. The goal is for you to be able to learn the ins and outs of these structures to the point where you can use them in your own projects and problems. You will find that different structures work better for different kinds of data. Part of the hope with this is that you will begin to gain an understanding of when and where to use different structures. Let's get learning!

What's in this Project?

  • Data Structures:
    • Arrays
    • Graphs
    • Hash Tables
    • Linked Lists
    • Queues
    • Stacks
    • Trees
  • Algorithms:
    • Recursions
      • Factorial
      • Fibonacci
      • Reverse String
    • Searching
      • Breadth First
      • Depth First
      • Dijkstra
      • Bellmann-Ford
      • Binary
      • Linear
    • Sorting
      • Bubble
      • Heap
      • Insertion
      • Merge
      • Quick
      • Selection

All of these examples and problems presented are written in C/C++.

Getting Started

Don't know where to start? Right here is perfect! We will walk you through exactly how to get set up to work with these data structures and algorithms and solve the problems we have set up for you.

  1. To get started, make a fork of this repository.
  2. You will want to have an IDE to work in, Visual Studio or VS Code are typical for C/C++.
  3. In your forked version, press the green code button. Copy the HTTPS link.
  4. Open Visual Studio, select clone a repository
  5. Paste the Link in "Repository Location", and select the destination you want your local copy stored in
  6. Click clone and get started!

Contributions

  • This repository is open for contributions feel free to check the CONTRIBUTING.md file for details on how to add anything I missed