How good is the following method for dividing a set of numbers into two subsets with sums that are as close as possible? The problem is part of the NP group, but the following simple method seems to work pretty well.  Sort the list in descending order. Then remove the numbers one at a time and insert into the subset that has the smaller sum at the time of insertion.
The difference between the two sums will definitely be no greater than the maximum of the original set. In executing the algorithm, each time that the sum of one subset overtakes the other, the difference between the sums is guaranteed to be no greater than the last number that was placed.
It is easy to find cases where this algorithm does not give the minimum sum difference, but even in those cases it works pretty well.  I tried it for prime numbers and squares, cubes, Fibonacci numbers and pseudorandom numbers from 1 to 1,000,000, and in each case got a sum difference that were small compared to the total sum of the original set.  The only way I can imagine the algorithm not doing well is if the numbers are far apart and there is just one way to arrange them so that the two sums are close. Is there a way of determining a worst case scenario?

This algorithm is known as longest processing time first scheduling and is known to have an approximation ratio of $\frac76$ in the two-partition case, like here: the largest part in the partition obtained by this algorithm will be at most $\frac76$ of the size of the largest part in the optimal partition.
Said approximation ratio is met by the input $\{3,3,2,2,2\}$, where the algorithm outputs $\{3,2,2\},\{3,2\}$ with largest part $7$ but the optimal partition is $\{3,3\},\{2,2,2\}$ with largest part $6$.
