Мое предложение: сделайте так, чтобы все работало с наименьшими усилиями, а затем оптимизируйте его позже.Может оказаться, что узким местом в вашем приложении является что-то совсем другое, а улучшение в обнаружении столкновений - лишь незначительная часть.
Например, скажем, вы обнаружите, что ваше приложение тратит 10% своего времени на выполнениеобнаружение столкновений, и 50% своего времени делает чтение с диска.Если вы можете использовать кеширование для сокращения чтения с диска вдвое, вы повысите производительность на 25%, что более чем в два раза лучше, чем вы могли бы достичь, полностью исключив время обнаружения коллизий.
Как сказал Дональд Кнут "преждевременная оптимизация - корень всего зла. "