亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如下情況所示,難道我要遍歷一遍所有用戶才可以么?

如下情況所示,難道我要遍歷一遍所有用戶才可以么?

斯蒂芬大帝 2023-04-03 14:10:23
有很多用戶,用戶之間存在好友關系?,F在要針對某一個用戶,算出跟該用戶共同好友數最多的一些用戶,按照共同好友數遞減排列。類似qq空間,facebook的好友推薦這種。
查看完整描述

2 回答

?
UYOU

TA貢獻1878條經驗 獲得超4個贊

說一個最簡單的思路

最簡單的圖算法,遍歷你所有的好友節點,取出每個好友的好友(二度好友)的列表,然后按二度好友的ID為key做計數操作,最后按計數排序就行了。遍歷的用戶數是你的二度好友的人數。

按這個思路,相信目前流行的圖數據庫(比如Neo4j)都能實現你的需求。


查看完整回答
反對 回復 2023-04-07
?
不負相思意

TA貢獻1777條經驗 獲得超10個贊

我的想法是,利用集合的運算進行求解比較快捷。所有的人構成一個S全集,每一個用戶的好友就是全集中的一個子集,而你和所有的好友求共同好友就是子集與子集的求交操作。交集最大的那個就是你所求的好友。

利用邏輯運算的按位與運算求集合的交集是很快當的。哈哈!


查看完整回答
反對 回復 2023-04-07
  • 2 回答
  • 0 關注
  • 158 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號