# algorithm-tdd
Implement classical algorithms and data structures under test-driven development.

In this repo I will develop basic algorithms and data structures in C++ while strictly adhering to a test-driven workflow.
I will use Google Gtest framework and Travis CI for automatic compiling and testing.

I have consulted several books and resources before starting this project and want to sufficiently credit them here:
  - CLRS's Introduction to Algorithms
  - Miller & Ranum's Problem Solving with Algorithms and Data Structures Using Python
  - M. A. Weiss's Data Structures & Algorithm analysis in C++
  - S. Meyers' Effective C++
  - The C++ STL source code
  - Google Gtest framework documentation and source code

The algorithms and data structures I choose to implement are all well-known and thus this repo is solely for my learning purpose. All credits on explaining how these algorithms work and best practices in implementing them belong to the authors above and all coding errors are mine. Occationaly, I will use examples of complex algorithms implemented by others and only try to write testsuites for them. Under such cases I will adequately cite the source(s) and credit the original author(s).

Whenever possible, I will also write-up my attempts of profiling and empirically analyzing complexities of these algorithms & data structures.


https://travis-ci.org/nguyentu1602/algorithm-tdd.svg?branch=master

# algorithm-tdd
Implement classical algorithms and data structures under test-driven development.

In this repo I will develop basic algorithms and data structures in C++ while strictly adhering to a test-driven workflow.
I will use Google Gtest framework and Travis CI for automatic compiling and testing.

I have consulted several books and resources before starting this project and want to sufficiently credit them here:
  - CLRS's Introduction to Algorithms
  - Miller & Ranum's Problem Solving with Algorithms and Data Structures Using Python
  - M. A. Weiss's Data Structures & Algorithm analysis in C++
  - S. Meyers' Effective C++
  - The C++ STL source code
  - Google Gtest framework documentation and source code

The algorithms and data structures I choose to implement are all well-known and thus this repo is solely for my learning purpose. All credits on explaining how these algorithms work and best practices in implementing them belong to the authors above and all coding errors are mine. Occationaly, I will use examples of complex algorithms implemented by others and only try to write testsuites for them. Under such cases I will adequately cite the source(s) and credit the original author(s).

Whenever possible, I will also write-up my attempts of profiling and empirically analyzing complexities of these algorithms & data structures.

[![Build Status](https://travis-ci.org/nguyentu1602/algorithm-tdd.svg?branch=master)](https://travis-ci.org/nguyentu1602/algorithm-tdd)

Update the build image to correct markdown format.
Update the build image to correct markdown format.