The included source code implements several different serial and parallel search algorithms on an input sorted sequence of strings, as described in the included problem description text file. Besides the standard binary search algorithm, the code includes a hash map based search. The hash map search algorithm is in two ways, one with Intel Threading Building Blocks (TBB) and the second using OpenMP. The choice of search algorithm can be selected on the command line in order to more easily compare execution performance of different algorithms on given data sets. Build environments for both Windows and Linux are included. Utilization of Intel Parallel Studio to correct and refine the performance is documented.
DISCLAIMER: This code is provided by the author as a submitted contest entry, and is intended for educational use only. The code is not guaranteed to solve all instances of the input data sets and may require modifications to work in your own specific environment.