This algorithm is not new - it is well known in fact. The issue with it is that it's continuous-time. For example, you can't run your algorithm on a Turing machine.
The real problem was to find an algorithm that runs in a finite number of discrete steps.