Answered step by step
Verified Expert Solution
Question
1 Approved Answer
2 All - Stars Suppose you re organizing a tennis tournament between n players which we simply label as 1 , 2 , . .
AllStars Suppose youre organizing a tennis tournament between n players which we simply label as n Each player competes against every other player, and there are no repeat matches and no tied scores. We model the results of the competition as a directed graph with n vertices and exactly one directed edge between each pair of vertices: G V E with V n where either i j in E if i defeated j or j i in E if j defeated i Such a graph is called a tournament. You want to determine a way to rank these players, but a challenge here is that cycles may exist in your tournament eg i may defeat j in a match, and j could defeat k but then we could still have k win a match against i; this would lead to a cycle of length three. A ranking for the tournament is an ordering r r rn where node r is established as the overall rank player. Due to the potential existence of cycles it is challenging to find a fair ranking. points We decide that the top ranked player should always be some node whose outdegree in the directed graph is maximum. We motivate this claim by proving that if player i has maximum degree, then for every other player j either i beat j or i beat some player k which beat j Prove this claim. Hint: A proof by induction on n works well. points We decide that a reasonable definition is suggested by the previous result. A sequence of nodes r r rn is a valid ranking if for each i n the node ri has maximum outdegree in the subtournament induced by the nodes ri ri rn Give a polynomialtime algorithm which decides if a given permutation of the nodes v v vn is a valid ranking. points Describe a tournament of size n which has precisely one valid ranking. points One brute force method for producing all valid rankings is to consider all permutations of the nodes and then use your algorithm for Part b to check each one if it is a valid ranking. This will run in time Onpn where pn is the runtime of your algorithm in Part b Instead, create a better algorithm which runs in time OV alpolyn where V al is the set of valid rankings, and polyn is a polynomial in nYou do not need to analyze the runtime of your algorithm.
AllStars
Suppose youre organizing a tennis tournament between n players which we simply label as n Each
player competes against every other player, and there are no repeat matches and no tied scores. We model
the results of the competition as a directed graph with n vertices and exactly one directed edge between
each pair of vertices: G V E with V n where either i j in E if i defeated j or
j i in E if j defeated i Such a graph is called a tournament.
You want to determine a way to rank these players, but a challenge here is that cycles may exist in
your tournament eg i may defeat j in a match, and j could defeat k but then we could still have k win
a match against i; this would lead to a cycle of length three.
A ranking for the tournament is an ordering r r rn where node r is established as the overall
rank player. Due to the potential existence of cycles it is challenging to find a fair ranking.
points We decide that the top ranked player should always be some node whose outdegree in the
directed graph is maximum. We motivate this claim by proving that if player i has maximum degree,
then for every other player j either i beat j or i beat some player k which beat j Prove this claim.
Hint: A proof by induction on n works well.
points We decide that a reasonable definition is suggested by the previous result. A sequence of
nodes r r rn is a valid ranking if for each i n the node ri has maximum outdegree
in the subtournament induced by the nodes ri
ri rn Give a polynomialtime algorithm which
decides if a given permutation of the nodes v v vn is a valid ranking.
points Describe a tournament of size n which has precisely one valid ranking.
points One brute force method for producing all valid rankings is to consider all permutations of
the nodes and then use your algorithm for Part b to check each one if it is a valid ranking. This will
run in time Onpn where pn is the runtime of your algorithm in Part b
Instead, create a better algorithm which runs in time OV alpolyn where V al is the set of valid
rankings, and polyn is a polynomial in nYou do not need to analyze the runtime of your algorithm.
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started