Giter Club home page Giter Club logo

proalgos-cpp's Introduction

ProAlgos: C++

Travis status

This project is focused on implementing algorithms and data structures in C++, while following good software engineering practices, such as:

  • Writing well-documented code
  • Adhering to code guidelines
  • Writing and passing unit tests
  • Reviewing each other's code

Goals

  1. Implement algorithms and data structures
  2. Learn to be better software developers
  3. Guide one another on version control, unit testing, and algorithms

How to get involved

There are a few ways to get involved.

Want to contribute to open-source and get involved with the project?

  1. Read the contribution guidelines
  2. Fork the repo
  3. Create an issue describing what you'd like to add, or claim an issue that's up for grabs
  4. Create a branch and add your code
  5. Submit a pull request and reference the issue it closes

You can find more details regarding the steps above in the contribution guidelines, so be sure to check them out.

Just want to suggest a new algorithm or report a bug?

Create a new issue and we'll handle it from there. ๐Ÿ˜„

Contents

โœ… = has unit tests

Algorithms

Data structures

Compiling

To compile the source files, run make from the C++ directory. Doing so will create executable binaries in the bin directory.

To compile and run all tests, run make test. This will compile all the tests (in the same way as described above) and will run them, displaying the results.

In order to run a specific test and see its results, run it manually from the bin directory after calling make. For example, this command (executed from bin) would run only the unit tests for the N Queens algorithm:

$ ./n_queens

To remove all of the files created during compilation, run make clean. You need not do this every time you make some changes to a file and want to recompile it. Just run make and it will re-compile just those files whose contents have changed.

To see what happens in the background during compilation and testing, see the following files:

For more information on make, see the GNU make Manual. For more information on CMake, see the CMake Tutorial.

Maintainers

This project is actively maintained by @alxmjo, and inactively by @faheel.

License

This project is licensed under the terms of the MIT license.

proalgos-cpp's People

Contributors

faheel avatar alxmjo avatar khushman1 avatar physicsuofraui avatar a-moreira avatar faraazahmad avatar coleseverson avatar luisfertr avatar eskeype avatar hafraz07 avatar janos-laszlo avatar ahmad307 avatar realanishsharma avatar assasch avatar cssartori avatar ddugovic avatar hossam-tarek avatar ilayaraja97 avatar jzisheng avatar louisebc avatar rajiv2605 avatar devrin avatar b1z0n avatar rjstyles avatar rushyendher avatar 100sarthak100 avatar satch97 avatar sumit9696 avatar varunjm avatar hefty-head avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.