Возможно, имелись в виду алгоритмы кластеризации, которые используются для работы с большими наборами данных. cartetika.ru Некоторые из них:
- Разделительные алгоритмы. cartetika.ru Делят объекты данных на непересекающиеся группы. cartetika.ru Ни один объект не может находиться в более чем одном кластере, и в каждом кластере должен быть хотя бы один объект. cartetika.ru Чаще всего используются при работе с большими наборами данных, так как основаны на несложных вычислениях. cartetika.ru Примеры: K-means и CLARANS. cartetika.ru
- Иерархические алгоритмы. cartetika.ru Используются для обнаружения основных закономерностей в наборе данных для проведения статистических исследований. cartetika.ru Для работы этих алгоритмов определяется матрица близости, которая содержит попарные расстояния между всеми объектами. cartetika.ru На основании её происходит объединение или разделение объектов. cartetika.ru
- Алгоритмы на основе плотности. cartetika.ru Разбивают объекты на кластеры на основе оценки плотности распределения. cartetika.ru
Также для поиска пересечений массивов, в том числе больших, можно использовать алгоритм Ахо-Корасика. stackoverflow.com Он требует много памяти, и если совпадений слишком много, производительность снижается. stackoverflow.com