Question: Social engineering. ( 2 0 points ) Suppose we have a community of n people. We can create a directed graph from this community as
Social engineering. points
Suppose we have a community of people. We can create a directed graph from this
community as follows: the vertices are people, and there is a directed edge from person
to person if A would forward a rumor to Assume that if there is an edge from
to then A will always forward any rumor they hear to Notice that this relationship
isn't symmetric: A might gossip to but not vice versa. Suppose there are directed
edges total, so is a graph with vertices and edges.
Define a person to be influential if for all other people in the community, there is
a directed path from to in Thus, if you tell a rumor to an influential person
eventually the rumor will reach everybody. You have a rumor that you'd like to spread,
but you don't have time to tell more than one person, so you'd like to find an influential
person to tell the rumor to
In the following questions, assume that is the directed graph representing the commu
nity, and that you have access to as an array of adjacency lists: for each vertex in
time you can get a pointer to the head of the linked lists outgoingneighbors
and incomingneighbors. Notice that is not necessarily acyclic. In your answers,
you may appeal to any statements we have seen in class, in the notes, or in CLRS
a points Show that all influential people in are in the same strongly connected
component, and that everyone in this strongly connected component is influential.
Hint: You need to refer the definition of strongly connected component,
and you can prove using either induction or contradiction.
b points Suppose that an influential person exists. Give an algorithm that, given
finds an influential person.
We are expecting a description or pseudocode of your algorithm and a
short argument about the runtime. You can borrow any algorithm that
we have learned in class.
Step by Step Solution
There are 3 Steps involved in it
1 Expert Approved Answer
Step: 1 Unlock
Question Has Been Solved by an Expert!
Get step-by-step solutions from verified subject matter experts
Step: 2 Unlock
Step: 3 Unlock
