1. Introduction
2. The recommendation task
2.1. Evaluation metrics
3. Main approaches for Recommender Systems
3.1. Collaborative Filtering
3.2. Content-based Recommender Systems
3.3. Graph-based
3.4. Context-Aware Recommender Systems
4. Recommender Systems for Online Social Networks
4.1. Friends and People Recommendations
4.2. Tag-based recommendations
4.3. Location-aware recommendations
5. Recommender Systems for Mobile Social Networks
5.1. Collaborative Filtering
5.2. Exploiting tags
6. Concluding remarks and open challenges