Finding the sub-array with maximum sum - my slow approach
You code :


private static int[] buildRandom(int size, int min, int max) {
    return new Random().ints(size, min, max).toArray();
}



I think that doing new Random several times, will reduce the "randomness" of the output. You can read that Stack Overflow question for more information. The idea is to remove the new Random() and use the same instance to produce several output. I would suggest to have an instance of Random in your class FindMaximumSubArraySumProblem but then does it make sense to have it ? Not really. So this method look kind of odd in your class. You could move it in his own helper class where it would make more sense, and then extract an instance of Random to increase randomness.