ta2_sol - COMP 271H Design and Analysis of Algorithms 2006...

Info iconThis preview shows pages 1–2. Sign up to view the full content.

View Full Document Right Arrow Icon
COMP 271H Design and Analysis of Algorithms 2006 Fall Semester Tutorial 2 Solution 1. You are given a set S of n points in the plane. p S , we use p x and p y to denote its x - and y -coordinates. We assume that p x 6 = q x and p y 6 = q y for any two points p, q S . A point p S is maximal if for any other point q S , q x < p x or q y < p y . Design a divide-and-conquer algorithm to compute the maximal points in O ( n log n ) time. Idea: We first sort S in increasing order of x-coordinates. In our divide-and-conquer algorithm, we divide these points into a left point set and a right point, solve them recursively, and combine these two partial solutions. We claim that this combined solution is the solution we want to compute. Observations: (Note: Observation is just used to guide you thinking, it won’t be included in the solution. But it may help in the correctness proof.) First, what these partial solutions look like? Since we have pre-sorted S in the very beginning, we may assume that the partial point list in increasing order of x-coordinates. Based on these assumptions, the partial point list may look like:
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Image of page 2
This is the end of the preview. Sign up to access the rest of the document.

Page1 / 2

ta2_sol - COMP 271H Design and Analysis of Algorithms 2006...

This preview shows document pages 1 - 2. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online