java programming
coding-challenge/.git/COMMIT_EDITMSG
Include problem description and input files Signed-off-by: Taylor Hicks <[email protected]> # 50-character subject line # # 72-character wrapped longer description. This should answer: # # * Why was this change necessary? # * How does it address the problem? # * Are there any side effects? # # Include a link to the ticket, if any. # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # On branch master # # Initial commit # # Changes to be committed: # new file: courses.csv # new file: prerequisites.csv # new file: readme.md #
coding-challenge/.git/config
[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true ignorecase = true precomposeunicode = true [user] name = Taylor Hicks email = [email protected]
coding-challenge/.git/HEAD
ref: refs/heads/master
coding-challenge/.git/hooks/ctags
#!/bin/sh set -e PATH="/usr/local/bin:$PATH" dir="`git rev-parse --git-dir`" trap 'rm -f "$dir/$$.tags"' EXIT git ls-files | \ "${CTAGS:-ctags}" --tag-relative -L - -f"$dir/$$.tags" --languages=-javascript,sql mv "$dir/$$.tags" "$dir/tags"
coding-challenge/.git/hooks/post-checkout
#!/bin/sh local_hook="$HOME"/.git_template.local/hooks/post-checkout [ -f "$local_hook" ] && . "$local_hook" .git/hooks/ctags >/dev/null 2>&1 &
coding-challenge/.git/hooks/post-commit
#!/bin/sh local_hook="$HOME"/.git_template.local/hooks/post-commit [ -f "$local_hook" ] && . "$local_hook" .git/hooks/ctags >/dev/null 2>&1 &
coding-challenge/.git/hooks/post-merge
#!/bin/sh local_hook="$HOME"/.git_template.local/hooks/post-merge [ -f "$local_hook" ] && . "$local_hook" .git/hooks/ctags >/dev/null 2>&1 &
coding-challenge/.git/hooks/post-rewrite
#!/bin/sh case "$1" in rebase) exec .git/hooks/post-merge ;; esac
coding-challenge/.git/hooks/pre-commit
#!/bin/sh local_hook="$HOME"/.git_template.local/hooks/pre-commit if [ -f "$local_hook" ]; then . "$local_hook" fi
coding-challenge/.git/hooks/prepare-commit-msg
#!/bin/sh local_hook="$HOME"/.git_template.local/hooks/prepare-commit-msg if [ -f "$local_hook" ]; then . "$local_hook" fi
coding-challenge/.git/index
coding-challenge/.git/info/exclude
# git ls-files --others --exclude-from=.git/info/exclude # Lines that start with '#' are comments. # For a project mostly in C, the following would be a good set of # exclude patterns (uncomment them if you want to use them): # *.[oa] # *~
coding-challenge/.git/logs/HEAD
0000000000000000000000000000000000000000 6b8bf2f410e84f431bb6a31fd52a7e9a0b39a2a3 Taylor Hicks <[email protected]> 1476750728 +1100 commit (initial): Include problem description and input files
coding-challenge/.git/logs/refs/heads/master
0000000000000000000000000000000000000000 6b8bf2f410e84f431bb6a31fd52a7e9a0b39a2a3 Taylor Hicks <[email protected]> 1476750728 +1100 commit (initial): Include problem description and input files
coding-challenge/.git/objects/03/74ee94d6e44fa06ca7ec3dcce5028c88169b37
coding-challenge/.git/objects/03/74ee94d6e44fa06ca7ec3dcce5028c88169b37
coding-challenge/.git/objects/6b/8bf2f410e84f431bb6a31fd52a7e9a0b39a2a3
coding-challenge/.git/objects/6b/8bf2f410e84f431bb6a31fd52a7e9a0b39a2a3
commit 305�tree 0374ee94d6e44fa06ca7ec3dcce5028c88169b37 author Taylor Hicks <[email protected]> 1476750728 +1100 committer Taylor Hicks <[email protected]> 1476750728 +1100 Include problem description and input files Signed-off-by: Taylor Hicks <[email protected]>
coding-challenge/.git/objects/6e/1f1fd3e1faa200785d4b5d4919de91329ee735
coding-challenge/.git/objects/6e/1f1fd3e1faa200785d4b5d4919de91329ee735
blob 2089�Alex Solutions Coding Challenge =============================== You are currently studying to complete a software development certification provided by an online education provider. The certification requires the completion of twelve online course units, which may or may not specify pre-requisite course units. In order to register for a new course unit, you must have already completed _all_ pre-requisite course units _before_ registering for the new course. You decide to write a program that, given a list of courses and their pre-requisites, produces a possible order in which you may complete as many of the provided course units as possible, adhering to the pre-requisite requirements. Provided to you are the following: 1. A comma-seperated file containing course titles and unique ids, "courses.csv". 2. A comma-seperated file containing course pre-requisites, by id, "prerequisites.csv". 3. This problem description, "readme.md". Please provide us with the following: 1. A brief (one or two page) document describing your thought process, how you arrived at the given solution and any challenges that you faced. 2. A simple program in your preferred language, no more than approximately one-thousand lines of code, that can produce a solution to the problem. 3. A short test script that can be executed on any linux workstation to run your program with example input and parameters. 4. The git repository, included with this problem, complete with your commit history. We are primarily interested in your process, so any solution you can provide before the specified time and date will be sufficient. We also do not expect effort exceeding more than a few hours of your time, consider the length of your typical technical interview as a baseline. We also ask that you please do not distribute or make public any of the content found within this coding challenge as it has been administered in confidence. We encourage you to email us with any questions, comments and feedback that you might have. Sincerely, The Alex Solutions Product Team.
coding-challenge/.git/objects/95/809a72637c4774515a60992d3e9fed11ca2f37
coding-challenge/.git/objects/95/809a72637c4774515a60992d3e9fed11ca2f37
| blob 124�course | prerequisite |
| 2 | 1 |
| 2 | 6 |
| 2 | 11 |
| 3 | 1 |
| 3 | 6 |
| 3 | 7 |
| 3 | 8 |
| 3 | 12 |
| 4 | 1 |
| 4 | 3 |
| 4 | 9 |
| 5 | 1 |
| 5 | 3 |
| 5 | 4 |
| 5 | 12 |
| 6 | 1 |
| 7 | 6 |
| 8 | 6 |
| 8 | 7 |
| 8 | 10 |
| 8 | 12 |
| 9 | 5 |
| 11 | 8 |
| 11 | 10 |
coding-challenge/.git/objects/97/447fc34a10746e36d4be160d866839c0cd64c8
coding-challenge/.git/objects/97/447fc34a10746e36d4be160d866839c0cd64c8
| blob 268�id | title |
| 1 | Programming in C |
| 2 | Distributed Computing |
| 3 | Database Systems |
| 4 | Algorithms 1 |
| 5 | Algorithms 2 |
| 6 | Programming in Java |
| 7 | Advanced Programming in Java |
| 8 | Big Data with Apache Spark |
| 9 | Programming in Perl |
| 10 | Probability |
| 11 | Scalable Machine Learning |
| 12 | Data Structures |
coding-challenge/.git/refs/heads/master
6b8bf2f410e84f431bb6a31fd52a7e9a0b39a2a3
coding-challenge/.git/tags
!_TAG_FILE_FORMAT 2 /extended format; --format=1 will not append ;" to lines/ !_TAG_FILE_SORTED 1 /0=unsorted, 1=sorted, 2=foldcase/ !_TAG_PROGRAM_AUTHOR Darren Hiebert /[email protected]/ !_TAG_PROGRAM_NAME Exuberant Ctags // !_TAG_PROGRAM_URL http://ctags.sourceforge.net /official site/ !_TAG_PROGRAM_VERSION 5.8 //
coding-challenge/courses.csv
| id | title |
| 1 | Programming in C |
| 2 | Distributed Computing |
| 3 | Database Systems |
| 4 | Algorithms 1 |
| 5 | Algorithms 2 |
| 6 | Programming in Java |
| 7 | Advanced Programming in Java |
| 8 | Big Data with Apache Spark |
| 9 | Programming in Perl |
| 10 | Probability |
| 11 | Scalable Machine Learning |
| 12 | Data Structures |
coding-challenge/prerequisites.csv
| course | prerequisite |
| 2 | 1 |
| 2 | 6 |
| 2 | 11 |
| 3 | 1 |
| 3 | 6 |
| 3 | 7 |
| 3 | 8 |
| 3 | 12 |
| 4 | 1 |
| 4 | 3 |
| 4 | 9 |
| 5 | 1 |
| 5 | 3 |
| 5 | 4 |
| 5 | 12 |
| 6 | 1 |
| 7 | 6 |
| 8 | 6 |
| 8 | 7 |
| 8 | 10 |
| 8 | 12 |
| 9 | 5 |
| 11 | 8 |
| 11 | 10 |
coding-challenge/readme.md
Alex Solutions Coding Challenge =============================== You are currently studying to complete a software development certification provided by an online education provider. The certification requires the completion of twelve online course units, which may or may not specify pre-requisite course units. In order to register for a new course unit, you must have already completed _all_ pre-requisite course units _before_ registering for the new course. You decide to write a program that, given a list of courses and their pre-requisites, produces a possible order in which you may complete as many of the provided course units as possible, adhering to the pre-requisite requirements. Provided to you are the following: 1. A comma-seperated file containing course titles and unique ids, "courses.csv". 2. A comma-seperated file containing course pre-requisites, by id, "prerequisites.csv". 3. This problem description, "readme.md". Please provide us with the following: 1. A brief (one or two page) document describing your thought process, how you arrived at the given solution and any challenges that you faced. 2. A simple program in Java or Javascript, no more than approximately one-thousand lines of code, that can produce a solution to the problem. 3. A short test script that can be executed on any linux workstation to run your program with example input and parameters. 4. A local git repository is included in the zip file, please complete with your commit history. The git commits will be saved locally in this local git repository. Please do not upload commits to GitHub or any online/public git repository. We are primarily interested in your process, so any solution you can provide before the specified time and date will be sufficient. We also do not expect effort exceeding more than a few hours of your time, consider the length of your typical technical interview as a baseline. We also ask that you please do not distribute or make public any of the content found within this coding challenge as it has been administered in confidence. We encourage you to email us with any questions, comments and feedback that you might have. Sincerely, The Alex Solutions Product Team.