// These seven are from Tim's paper (listsort.txt)
RANDOM_INT { public Object[] build(int len) {
Integer[] result = new Integer[len]; for (int i = 0; i < len; i++)
result[i] = rnd.nextInt(); return result;
}
},
DESCENDING_INT { public Object[] build(int len) {
Integer[] result = new Integer[len]; for (int i = 0; i < len; i++)
result[i] = len - i; return result;
}
},
ASCENDING_INT { public Object[] build(int len) {
Integer[] result = new Integer[len]; for (int i = 0; i < len; i++)
result[i] = i; return result;
}
},
ASCENDING_3_RND_EXCH_INT { public Object[] build(int len) {
Integer[] result = new Integer[len]; for (int i = 0; i < len; i++)
result[i] = i; for (int i = 0; i < 3; i++)
swap(result, rnd.nextInt(result.length),
rnd.nextInt(result.length)); return result;
}
},
ASCENDING_10_RND_AT_END_INT { public Object[] build(int len) {
Integer[] result = new Integer[len]; int endStart = len - 10; for (int i = 0; i < endStart; i++)
result[i] = i; for (int i = endStart; i < len; i++)
result[i] = rnd.nextInt(endStart + 10); return result;
}
},
ALL_EQUAL_INT { public Object[] build(int len) {
Integer[] result = new Integer[len]; for (int i = 0; i < len; i++)
result[i] = 666; return result;
}
},
DUPS_GALORE_INT { public Object[] build(int len) {
Integer[] result = new Integer[len]; for (int i = 0; i < len; i++)
result[i] = rnd.nextInt(4); return result;
}
},
RANDOM_WITH_DUPS_INT { public Object[] build(int len) {
Integer[] result = new Integer[len]; for (int i = 0; i < len; i++)
result[i] = rnd.nextInt(len); return result;
}
},
PSEUDO_ASCENDING_STRING { public String[] build(int len) {
String[] result = new String[len]; for (int i = 0; i < len; i++)
result[i] = Integer.toString(i); return result;
}
},
RANDOM_BIGINT { public BigInteger[] build(int len) {
BigInteger[] result = new BigInteger[len]; for (int i = 0; i < len; i++)
result[i] = HUGE.add(BigInteger.valueOf(rnd.nextInt(len))); return result;
}
};
publicabstract Object[] build(int len);
publicvoid resetRandom() {
rnd = new Random(666);
}
privatestatic Random rnd = new Random(666);
privatestaticvoid swap(Object[] a, int i, int j) {
Object t = a[i];
a[i] = a[j];
a[j] = t;
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.