Можно иметь саму хеш-таблицу, сообщающую о количестве обнаруженных коллизий, вообще не раскрывая ее внутреннюю реализацию.
Для хеш-таблиц, в которых используется зондирование (любого типа), количество коллизий равно количеству элементов, размещенных в индексе, не совместимом с их хэш-кодом (то есть потому, что позиция, в которой они обычно хранятся, уже была занято).
Для хеш-таблиц, в которых используется сцепление, количество коллизий равно количеству элементов в хеш-таблице за вычетом количества занятых сегментов (другими словами, считайте все вставленные элементы, кроме первого в каждом блоке). Это также довольно интуитивно понятно.
То, что я бы сделал на вашем месте, - это дал бы каждой хеш-таблице метод count_colissions()
, который вычисляет количество коллизий за O (n) раз, используя соответствующий метод, и возвращает его.