JAVA Write a METHOD named friendList that accepts a file name as a parameter and reads friend relationships from a file and stores them into a compound collection that is returned. You should create a map where each key is a person's name from the file, and the value associated with that key is a setof all friends of that person. Friendships are bi-directional: if Marty is friends with Danielle, Danielle is friends with Marty. The file contains one friend relationship per line, consisting of two names. The names are separated by a
JAVA
Write a METHOD named friendList that accepts a file name as a parameter and reads friend relationships from a file and stores them into a compound collection that is returned. You should create a map where each key is a person's name from the file, and the value associated with that key is a setof all friends of that person. Friendships are bi-directional: if Marty is friends with Danielle, Danielle is friends with Marty.
The file contains one friend relationship per line, consisting of two names. The names are separated by a single space. You may assume that the file exists and is in a valid proper format. If a file named buddies.txt looks like this:
Marty Cynthia Danielle Marty
Then the call of friendList("buddies.txt") should return a map with the following contents:
{Cynthia=[Marty], Danielle=[Marty], Marty:[Cynthia, Danielle]}
Constraints:
- You may open and read the file only once. Do not re-open it or rewind the stream.
- You should choose an efficient solution. Choose data structures intelligently and use them properly.
- You may create one collection (stack, queue, set, map, etc.) or nested/compound structure as auxiliary storage. A nested structure, such as a set of lists, counts as one collection. (You can have as many simple variables as you like, such as ints or strings.)
Trending now
This is a popular solution!
Step by step
Solved in 2 steps