Skip to content
/ dsac Public

Learn how to implement Data Structures, Algorithms and Concurrency. Prepare for the coding interview for C++ developers.

License

Notifications You must be signed in to change notification settings

dymons/dsac

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DSAC: Data Structures, Algorithms and Concurrency

What is dsac?

Dsac is a project containing the implementation of all the basic algorithms and data structures, as well as a bit of concurrency. Dsac is focused on preparing for an interview, on forming the reader's full understanding of the internal implementation of the algorithm and data structures.

Codemap

dsac contains the following structure of the project

  • algorithm Algorithms
    The algorithm directory contains classic sorting algorithms. The main implementation is placed in the folder algorithm/detail.
  • container Data structure
    The container directory contains classic linear and non-linear data structure.
  • concurrency Concurrency algorithms and data structures
    The container directory contains concurrency primitives for writing asynchronous code efficiently.
  • memory Smart pointers and Allocators
    The memory directory contains implementation of smart pointers and different types of allocators.
  • pattern Software design pattern
    The pattern directory contains implementation of common patterns to solve common problems in software design.
  • examples A set of examples on working with the POSIX API
    The examples directory contains examples with working POSIX API for writing backend apps using concurrency primitives from directory concurrency.

The current status of the project can be found at the whimsical.com/dsac

Distributed Systems

This repository also contains examples of the implementation of various algorithms and the theory of distributed systems to illustrate the use of concurrency. Examples of the implementation of distributed algorithms can be found in the folder with the prefix examples/dist.*

How to start?

To install dsac its dependencies and build this project, you just have to do:

Build the project

mkdir cmake-build-release && cd cmake-build-release
cmake .. && cmake --build .

License

Dsac is released under the terms of the MIT license. See COPYING for more information or see https://opensource.org/licenses/MIT.

About

Learn how to implement Data Structures, Algorithms and Concurrency. Prepare for the coding interview for C++ developers.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published