GithubHelp home page GithubHelp logo

populationsolver's Introduction

PopulationSolver

My requested solution for the problem:

"Given a list of people with their birth and end years (all between 1900 and 2000), find the year with the most number of people alive."

For this I created a class with the capabilities of also solving the problem for other year ranges as well. I then created a series of CxxTest tests to test my code in many various scenarios to make sure they were properly handled. All of the 6 test cases passed. This solution runs in linear time with linear space complexity.

The output is not very useful since the demonstration is in the unit tests, but if your interested the output of the test is as follows:

"Running cxxtest tests (6 tests)......OK!"

The requirements to run this yourself include having CxxTest installed from "https://sourceforge.net/projects/cxxtest/?source=navbar". I used version 4.4. This does not require C++ 11 capabilities and should run on many older gcc compilers just fine but it has only been confirmed working on the 4.9.3 gcc version.

example building of the tests:

$ python <cxxtestgen_location> --error-printer -o test.cpp PopulationSolverTest.h
$ g++ -I <cxxtest_dir> -o test test.cpp PopulationSolver.cpp

populationsolver's People

Contributors

boddie avatar

Watchers

James Cloos avatar  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.