Avoid performance degradation of indexed access when using a linked list.

Thanks to Artavazd Balaian.

Closes #134.
diff --git a/src/main/java/org/apache/commons/math4/distribution/EnumeratedDistribution.java b/src/main/java/org/apache/commons/math4/distribution/EnumeratedDistribution.java
index 5b1cd30..27f53bd 100644
--- a/src/main/java/org/apache/commons/math4/distribution/EnumeratedDistribution.java
+++ b/src/main/java/org/apache/commons/math4/distribution/EnumeratedDistribution.java
@@ -86,9 +86,8 @@
                NotANumberException {
         singletons = new ArrayList<>(pmf.size());
         final double[] probs = new double[pmf.size()];
-
-        for (int i = 0; i < pmf.size(); i++) {
-            final Pair<T, Double> sample = pmf.get(i);
+        int count = 0;
+        for (Pair<T, Double> sample : pmf) {
             singletons.add(sample.getKey());
             final double p = sample.getValue();
             if (p < 0) {
@@ -100,7 +99,7 @@
             if (Double.isNaN(p)) {
                 throw new NotANumberException();
             }
-            probs[i] = p;
+            probs[count++] = p;
         }
 
         probabilities = MathArrays.normalizeArray(probs, 1.0);