Я пытаюсь написать алгоритм для установления корреляции между n целыми числами битов для значения «1».
Вот пример 5-битного целого числа: 0,1,0,0,1
Я хочу установить процент корреляции между этим целым числом и набором из N других целых чисел.
Например, целое число A (0,1,0,0,1) и целое число B (0,1,0,0,0) имеют корреляцию 0,5 для значения «1» как только второе бит совпадает.
В моей базе данных Firebase к каждому user_ID прикреплено одно целое число n бит, которое я хочу сопоставить с целым числом n бит каждого другого пользователя моего приложения, чтобы получить тип корреляции между каждым пользователем.
Распределение общих корреляций между пользователями будет следовать гауссовой кривой, которую я хочу использовать в будущем, чтобы сопоставлять пользователей друг с другом.
Например: я хочу, чтобы пользователь А сопоставлялся с каждым другим пользователем, причем эти совпадения отсортированы по убыванию порядка сродства (от высокой к низкой корреляции между их n-битными целыми числами).
Ребята, вы хоть представляете, как я мог бы выполнить алгоритм, чтобы установить корреляцию между числом пользователей N, а затем выполнить другой алгоритм, чтобы отсортировать эти корреляции от высокого к низкому?
Любая помощь будет принята с благодарностью.
Спасибо за ваше время,
Maxime