private void Swap(int a, int b) { T tmp = _ids[a]; _ids[a] = _ids[b]; _ids[b] = tmp; _locator.Set(_ids[a], a); _locator.Set(_ids[b], b); }