Please use Java to write a method only as described. You do not need a complete program or class.
Please use Java to write a method only as described. You do not need a complete program or class.
Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
Related questions
Question
100%
Please use Java to write a method only as described. You do not need a complete program or class.
 | [String](https://docs.oracle.com/javase/8/docs/api/java/lang/String.html)
---
**Objective:**
Write a method named `rarest` that accepts a `TreeMap` from strings to strings as a parameter. The method should return the value that occurs least frequently in the map. If there is a tie, return the value that comes earlier in alphabetical order. If the map is empty, the method should throw an `IllegalArgumentException`.
**Example:**
Suppose a variable called `map` contains the following elements:
```java
{"Alyssa":"Harding", "Char":"Smith", "Dan":"Smith", "Jeff":"Jones", "Kasey":"Jones",
"Kim":"Smith", "Morgan":"Jones", "Ryan":"Smith", "Stef":"Harding"}
```
Calling `rarest(map)` would return `"Harding"` because that value occurs 2 times, fewer than any other.
**Note:** The method examines the values in the map, not the keys.
---
**Constraints:**
- You may create one additional data structure (stack, queue, set, map, etc.) as auxiliary storage. You can use as many simple variables as necessary.
- Do not modify the contents of the map passed to your method.
- Ensure your method signature prevents modification from any caller.
- Your solution should have a time complexity of no worse than O(N log N), where N is the number of pairs in the map.](/v2/_next/image?url=https%3A%2F%2Fcontent.bartleby.com%2Fqna-images%2Fquestion%2Fdf909276-6ad3-4144-b98c-235c5a32e436%2F5f0d4412-dbb4-43cd-b230-a29de1b2e149%2Fnrqg91_processed.jpeg&w=3840&q=75)
Transcribed Image Text:**Task Title: Rarest Value Finder**
**Language/Type:** Java TreeMap Collections
**Related Links:** [TreeMap](https://docs.oracle.com/javase/8/docs/api/java/util/TreeMap.html) | [String](https://docs.oracle.com/javase/8/docs/api/java/lang/String.html)
---
**Objective:**
Write a method named `rarest` that accepts a `TreeMap` from strings to strings as a parameter. The method should return the value that occurs least frequently in the map. If there is a tie, return the value that comes earlier in alphabetical order. If the map is empty, the method should throw an `IllegalArgumentException`.
**Example:**
Suppose a variable called `map` contains the following elements:
```java
{"Alyssa":"Harding", "Char":"Smith", "Dan":"Smith", "Jeff":"Jones", "Kasey":"Jones",
"Kim":"Smith", "Morgan":"Jones", "Ryan":"Smith", "Stef":"Harding"}
```
Calling `rarest(map)` would return `"Harding"` because that value occurs 2 times, fewer than any other.
**Note:** The method examines the values in the map, not the keys.
---
**Constraints:**
- You may create one additional data structure (stack, queue, set, map, etc.) as auxiliary storage. You can use as many simple variables as necessary.
- Do not modify the contents of the map passed to your method.
- Ensure your method signature prevents modification from any caller.
- Your solution should have a time complexity of no worse than O(N log N), where N is the number of pairs in the map.
Expert Solution

This question has been solved!
Explore an expertly crafted, step-by-step solution for a thorough understanding of key concepts.
This is a popular solution!
Trending now
This is a popular solution!
Step by step
Solved in 3 steps with 1 images

Knowledge Booster
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.Recommended textbooks for you

Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education

Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON

Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON

Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education

Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON

Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON

C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON

Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning

Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education