Posted: April 19th, 2017

Part 1

- In C++ or Java, code a search algorithm that searches a list of strings for a particular song. The searching algorithm will have two inputs: the playlist, which is a string array that contains a list of songs in alphabetical order; and a particular song, which is a string. If the song is found in the list, the algorithm will return the index of the song, and it will return -1 otherwise.
- This searching algorithm will employ a divide-and-conquer approach similar to that in binary search, but with a slight variation. In binary search, a list is split in 2 sublists during each step; however, for your assignment, you will build and algorithm that splits the list into 3 sublists during each step.

Part 2

- What is the time complexity (in Big-O notation) of your algorithm with respect to the size of the playlist?
- How does this time complexity compare to the time complexity of binary search (in terms of Big-O)?

Place an order in 3 easy steps. Takes less than 5 mins.