public IEnumerable <MostPopularRecommendation> GetRecommendations(IInputForUser userRatings, int numRecommendationsToTryToGet) { List <MostPopularRecommendation> recs = new List <MostPopularRecommendation>(); for (int i = 0; recs.Count < numRecommendationsToTryToGet && i < m_numRatingsForEachItem.Count; i++) { if (userRatings.ItemIsOkToRecommend(m_numRatingsForEachItem[i].Item1)) { recs.Add(new MostPopularRecommendation(m_numRatingsForEachItem[i].Item1, popularityRank: i + 1, numRatings: m_numRatingsForEachItem[i].Item2)); } } return(recs); }
public IEnumerable <AverageScoreRecommendation> GetRecommendations(IInputForUser userRatings, int numRecommendationsToTryToGet) { List <AverageScoreRecommendation> recs = new List <AverageScoreRecommendation>(); for (int i = 0; recs.Count < numRecommendationsToTryToGet && i < m_itemIdNumRatingsAndAverage.Count; i++) { if (userRatings.ItemIsOkToRecommend(m_itemIdNumRatingsAndAverage[i].Item1)) { recs.Add(new AverageScoreRecommendation( itemId: m_itemIdNumRatingsAndAverage[i].Item1, numRatings: m_itemIdNumRatingsAndAverage[i].Item2, averageScore: m_itemIdNumRatingsAndAverage[i].Item3) ); } } return(recs); }