Find Jobs
Hire Freelancers

Developing a Ratings Query Application

$10-30 USD

クローズ
投稿日: 7年以上前

$10-30 USD

完了時にお支払い
1 Introduction Most major websites collect feedback from their customers in order to improve the quality of their services. The most common form of user feedback is ratings. For example, [login to view URL] collects users’ ratings of books (see Figure 1), [login to view URL] collects movie ratings and [login to view URL] gathers users’ rating of hotels. Figure 1: Some books’ ratings on [login to view URL] A rating consists mainly of three important pieces of information: 1. The user ID: this is the ID of the user who gave the rating. 2. The item ID: this is the ID of the item being rated. For example, the item can be a book, a movie or a hotel. 3. The rating value: this is a numerical value that is usually an integer ranging from 1 to 5 (or 1 to 10), where 1 is the lowest rating (user not satisfied) and 5 (or 10) is the highest rating (user very satisfied). Your goal in this project is to write a program that reads a list of ratings from a text file, stores them e!ciently in memory (you should choose the appropriate data structure for this) and answers a number of queries as e!ciently as possible. Examples of queries are: What is the rating given by user i to item j? What is the average rating of item j? What is (are) the highest rated item(s)? 2 Requirements In this phase, you are required to implement the following classes: public class Rating { private int userId; private int itemId; private int value; // The value of the rating // Constructor public Rating(int userId, int itemId, int value); // Getters... (No setters. This class is immutable) } public class RatingManager { // Constructor public RatingManager(); // Read ratings from a file and create a RatingManager object that stores these ratings public static RatingManager read(String fileName); // Add a rating public void addRating(Rating rating); // Return all ratings given by user i. Search should be efficient. public LinkedList<Rating> getUserRatings(int i); // Return all ratings given to item j. Search should be efficient. public LinkedList<Rating> getItemRatings(int j); // Return the average rating of item j. If i has no ratings, -1 is returned public double getAverageItemRating(int j); // Return the average rating given by user i. If i has no ratings, -1 is returned public double getAverageUserRating(int i); // Return the list of all items having the highest average rating (for example if the highest average rating is 4.9, the method should return all items with average rating 4.9) public LinkedList<Integer> getHighestRatedItems(); } Let n denote the number of users, m the number of items and k the number of ratings. Usually k is much smaller than nm, because a user does not usually rate all items. Your memory requirement must be O(k) and not O(nm). 3 Deliverable and rules You must deliver: 1. A report written using the provided template.
プロジェクト ID: 12129237

プロジェクトについて

7個の提案
リモートプロジェクト
アクティブ 7年前

お金を稼ぎたいですか?

Freelancerで入札する利点

予算と期間を設定してください
仕事で報酬を得る
提案をご説明ください
登録して仕事に入札するのは無料です
この仕事に7人のフリーランサーが、平均$21 USDで入札しています
ユーザーアバター
Hi, I'm an experienced java developer and I can do this task in 2 days. I can produce quality code with comments as required. Thanks & Regards, Indika
$25 USD 2日以内
4.7 (13 レビュー)
5.4
5.4
ユーザーアバター
We have a team that will definitely provide best solution to you. We do fair code with reasonable price and client satisfaction is our Responsibility. Personally we have 8 + years experience of web, Mobile and desktop based applications and other technology related to this.
$10 USD 1日以内
0.0 (0 レビュー)
0.0
0.0
ユーザーアバター
Hi, my name is Aleksej Did I understand correctly - you need only a implementation of the classes from attachment, not whole program yet? If everything is correct, I can do your task
$25 USD 2日以内
0.0 (0 レビュー)
0.0
0.0
ユーザーアバター
Hi, I had hands on experience in Java, SQL server. Knowledge on Data structures and algorithms. I had an experience in java more than 3 years. So, I will complete to fulfill your requirement as soon as possible. Please let me kno Thanks, sravani
$20 USD 2日以内
0.0 (0 レビュー)
0.0
0.0
ユーザーアバター
I believe that I am the best candidate for this position because of my extensive experience as a full stack developer. I was part of the initial development team for VISA payment system migration to the chip based authentication system. Now working with NPCI to build UPI payment system for digital India initiative.
$25 USD 3日以内
0.0 (0 レビュー)
0.0
0.0

クライアントについて

SAUDI ARABIAのフラグ
Saudi Arabia
0.0
0
お支払い方法確認済み
メンバー登録日:12月 14, 2015

クライアント確認

このクライアントからの他の仕事

Decrypt files
$30-250 USD
ありがとうございます!無料クレジットを受け取るリンクをメールしました。
メールを送信中に問題が発生しました。もう一度お試しください。
登録ユーザー 投稿された仕事の合計
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
プレビューを読み込み中
位置情報へのアクセスが許可されました。
あなたのログインセッションの有効期限がきれ、ログアウトされました。もう一度ログインしてください。