如何对一堆 N x M 二进制矩阵进行排序,以便最相似的是双向链表中的邻居?
我有一组二维二进制矩阵,我需要有效地对某些数据结构中的矩阵集进行排序,以便彼此最相似的矩阵在数据结构中是彼此的“邻居”。我认为地图结构不会高效,因为我有近 40,000 个矩阵需要有效查找。
我的两个矩阵之间距离的公式是
getSimilarity(matrix toCompare)
//initialize variable "sum" to 0
//for each rowT in this and each rowC in toCompare
//sum += max(rowT,rowC) - bitwiseAnd(rowT,rowC)
// return sum
我什至不需要你给我一个数据结构,我所需要的只是一种比较两个矩阵的方法,它可以让我得到相似矩阵尽可能靠近彼此聚集的结果。
编辑:2012 年 12 月 19 日下午 1:52 我的行代表用户属性,我的列代表页面属性。每个矩阵表示用户具有哪些属性同时还具有某些页面属性(例如用户的年龄小于 42 并且他们访问过第 4 页)