// not really matter as in this case only a presorting is done.
// 2. It is very slow in theory as it introduces a O(n*n) runtime complexity
// in combination with lessThan(). Practically the code is still fast
// enough for thousands of items but this must be fixed.
//
// Proposal: Extend the internal structure ItemData by a member
// not really matter as in this case only a presorting is done.
// 2. It is very slow in theory as it introduces a O(n*n) runtime complexity
// in combination with lessThan(). Practically the code is still fast
// enough for thousands of items but this must be fixed.
//
// Proposal: Extend the internal structure ItemData by a member