Answered You can hire a professional tutor to get the answer.
A social network can be represented as a graph whose vertices represent people and whose edges represent relationships between people.
In this assignment, experiment with graphs, and graph algorithm. A social network can be represented as a graph whose vertices represent people and whose edges represent relationships between people. You will implement a program that reads in and analyzes a social network, where the relationship is defined as "knowing" one another. If two people know one another, there will be an undirected edge connecting their corresponding vertices in the graph representation of the social network. Your program will analyze the minimum, maximum and average degree of vertices in the network, the average shortest path length between every pair of persons, the longest shortest path length between two people, and the largest clique in the graph (a set of people who all know each other). Specifically:
1. Your program will take a file name as an argument. The first two lines of the file will contain the number of persons P and number of "knows" relationships R in the file, respectively. The next P lines each start with a consecutive integer (1..P) followed by a space, followed by the person's name, which is a string of lowercase characters (a-z). The remaining R lines each consist of two integers u and v separated by a space, which implies that person u and person v know each other. A sample input is attached below.
2. Your program will represent the information from the file as a graph using either an adjacent list or adjacent matrix representation.
3. Your program will compute and output several statistics about the graph. A sample output is attached below.