Given an ordered array of integers "V" and a integer "Sum", write a function that would return "true" if it finds two numbers in V that add up to Sum, and "false" otherwise.

Because there is no unique solution to the problem the goal is to think different ways to approach an issue and ultimately opt for the best one in terms of complexity. There is an example of set of answers that would show creative thinking and good problem solving skills.1) Trivial solution, just make sure that it works by using 2 for loops to try every combination of sums-> O(n^2)2) Improved solution, realise that you can search faster by binary searching the second element of the sum -> O(nlog(n))3) Best solution, make the complexity linear by using two "pointers" to the start and the end of the vector and gradually step back or forward accordingly to the sum.

FD

Related Computing A Level answers

All answers ▸

When data is transmitted over long distances, latency can become an issue. Explain what latency is.


How can I decide whether Quicksort or Mergesort is better for a given situation?


Why would you use Assembly Language instead of a normal programming language?


Given an unlimited number of light bulbs (that break at a certain height), and a building with 100 floors, how do you determine the height that the light bulb breaks?