开发者

Data Structure - Inserting/Updating into ordered list

I'm using the facebook api to retrieve a list of a user's photos. I'm using this to work out the user's close friends by seeing who has been tagged the most in the user's photos. So what I have the list of the tagged users (there will be duplicates). What I want to do is go through each tag and insert the user into a data structure. If the user is already there I want to increase that user's c开发者_高级运维ount by one. At the end I want the list ordered so I can 'rank' the friends. What data structure will be best for this?


Step 1:

Use an associative container. Map from UserId to user's count. Keep adding new users, and updating the user's count as you process more data.

Step2:

Copy all the users to another associative container, Now the key should be a pair(user's count, UserId).

You can now iterate over the 2nd container and have your items in order.

If you're using C++, you can use map for step 1, and set for step 2.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜