Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Implement a class that maintains a list of the top ten performers in a video gam

ID: 3655469 • Letter: I

Question

Implement a class that maintains a list of the top ten performers in a video game. An entry on the list consists of a name and score, and the list is kept sorted in descending order of scores. Here is an example of such a list when it has only four elements Spike 120 Whiz 105 G-Man 99 JediMaster 95 Use a class based on linked lists. The class should have a constructor that sets up an empty list, and a void insert(String name, int score) method that adds a name and a score pair to the list. The insert method puts the entry in the proper position so that the list stays sorted by score. The list should have a maximum size of 10. After the list has 10 elements, an attempt to add a name with a score that is greater than the minimum score causes an entry with minimum score to be dropped from the list. Test the score with a graphical user interface similar to LinkList1Demo.java. The graphical interface should support a single command of the form insert name score An sample of such a command is "insert Whiz 105."

Explanation / Answer

import java.util.LinkedList; import java.util.Scanner; public class HighScore { private LinkedList scores; public static void main(String[] args) { HighScore highScore = new HighScore(); Scanner scanner = new Scanner(System.in); while (true) { try { System.out.println("Enter the name (type 'stop' to quit):"); String name = scanner.nextLine(); if ("stop".equals(name)) { break; } System.out.println("Enter the high score:"); String score = scanner.nextLine(); highScore.insert(name, Integer.parseInt(score)); System.out.println("High scores:"); System.out.println(highScore.toString()); } catch (Exception e) { System.out.println("Invalid input, try again: "+e); e.printStackTrace(); } } } // constructor public HighScore() { // create an empty ArrayList scores = new LinkedList(); } public void insert(String name, Integer score) { String newScore = name + " " + score.toString(); if (scores.isEmpty()) { scores.add(newScore); return; } for (int i = 0; i 10) { scores.remove(10); } } // decide whether the new score is greater than the one we are looking at public boolean isGreaterThan(String first, String second) { Integer firstScore = Integer.parseInt(first.substring(first.lastIndexOf(' ')+1)); Integer secondScore = Integer.parseInt(second.substring(second.lastIndexOf(' ')+1)); return firstScore > secondScore; } @Override public String toString() { String scoreList = ""; for (int i = 0; i secondScore; } }
Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote