1 / 42

Comments for Assignment 1

Comments for Assignment 1. Q1 is basic part and is also part of outcome 1. Q2 is for outcome 1. Q3 is for outcome 2. To pass outcome 1, you need to get >=40 marks in total for Q1+Q2. To pass outcome 2, you need to give the algorithm for Q3.

chuck
Download Presentation

Comments for Assignment 1

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Comments for Assignment 1 Q1 is basic part and is also part of outcome 1. Q2 is for outcome 1. Q3 is for outcome 2. To pass outcome 1, you need to get >=40 marks in total for Q1+Q2. To pass outcome 2, you need to give the algorithm for Q3. You have MANY chances to pass the three outcomes. You pass outcome 1, 2 or 3 for the whole course, if you pass each outcome ONCE. The chances are Assignment 1-4 plus mid-term in Week 7. I want every student to pass the three outcomes before the final exam. Do not worry about this.

  2. See the demo slide on the website.

  3. Example 1: Whole Process H G F E D C B A Divide H G F ED C B A Divide H GF ED CB A Divide H G FE DCBA Merge G HE FC DA B Merge E F G HA B C D Merge A B C D E F G H

  4. (T(n/2)=2T(n/4)+n/2)

  5. Example 2: Whole Process A L G O R I T H M S Divide A L G O R|J T H M S Divide A L|G O R|J T|H M S Divide A|L|G|O R|J|T|H|M S Divide A|L|G|O|R|J|T|H|M|S Merge A | L | G |O R| J | T| H |M S Merge A L|G O R|J T|H M S Merge A G L O R|H J M S T MergeA G H J L M O R S T

  6. We can assume that the first rank is 1, 2, ,…n. example R1: g, q, p, r, m1, 2, 3, 4, 5 R2: q, p, r, g, m2, 3, 4, 1, 5

  7. Merge and Count Process: Another example. 1, 2, 8, 10, 11, 12; 3, 4, 5, 6, 7, 9; 4 4 4 4 4 3 # of inversions 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12. Time for merge : O(n).

  8. Can be done in O(n) time if we sort all the points first.

  9. Closest-Pair(p1, …, pn) { xg: array sorted based on x in increasing order yg: array sorted based on y in increasing order Compute separation line L such that half the points are on one side and half on the other side. Create sorted xg1 (left half), xg2(right half), yg1(left half) and yg2 (right half). O(n) 1 = Closest-Pair(xg1,yg1) (2 = Closest-Pair(xg2,yg2) ( = min((1, 2)) Merge: Delete all points further than  from separation line L (O(n) time) Create array new-yg for remaining points sorted by y-coordinatein (O(n) time). for (i=0; i<= size of new-yg; i++) for (j=1; j<=11; j++) (the nested loop takes O(n) time) if (d(new-yg[i], new-yg[i+j]<) then =d(new-yg[i], new-yg[j]; return . }

  10. The closest Pair (see the program ) y 80 • Combine (The last step) (47,75) (33,70) 70 (44,65) (34,60) (12,60) 60 (49,55) (40,50) (69,55) (5,50) 50 (74,43) (36,40) (46,40) (17,40) 40 (39,30) (41,30) 30 (50,25) (38,20) 20 (42,19) (65,14) (30,13) 10 (43,9) (37,8) (0,5) x (78,2) (10,4) (60,1) (31,0) (48,0) (0,0) 10 20 30 40 50 60 70 80

  11. The closest Pair (see the program ) 1st:blue. 2nd:green, 3rd: orange y * * 80 • Combine (The last step) * (47,75) (33,70) 70 (44,65) (34,60) (12,60) 60 (49,55) (40,50) (69,55) (5,50) 50 (74,43) (36,40) (46,40) (17,40) 40 (39,30) (41,30) 30 (50,25) (38,20) 20 (42,19) (65,14) (30,13) 10 (43,9) (37,8) (0,5) x (78,2) (10,4) (60,1) (31,0) (48,0) (0,0) 10 20 30 40 50 60 70 80

  12. Example 1 • Input: points p1, p2,…,p8 in a plane. • p1=(1,4), p2=(2,5), p3=(4,2), p4=(7,2), p5=(10,3), p6=(13,4),p7=(14,4), p8=(15,3) 6 p6 p7 p2 4 p1 p8 p5 2 p4 p3 0 2 4 6 8 10 12 14 16

  13. Find a line L1 such that 4 points are on one side and the other 4 points are on the other side. 6 L1 p6 p7 p2 4 p1 p8 p5 2 p4 p3 0 2 4 6 8 10 12 14 16

  14. Consider the left four points p1,p2,p3,p4. Find a line L2 such that 2 points are on one side and the other 2 points are on the other side.δ1 =Closest-pair(Region 1) = dist(p1,p2) = . δ2 =Closest- pair (Region 2) = dist(p3,p4) = 3δ=min(δ1 ,δ2)= 6 L2 Reg 2 L1 p6 p7 p1 4 p2 3 p8 p5 2 p4 p3 Reg 1 0 2 4 6 8 10 12 14 16

  15. Delete the points in Region 1 and 2 further than δ= from L2 • Compare the distance dist(p1,p3) with δ. Here dist(p1,p3) = > δ, δ is not updated. • Closest-pair(Region 1 and 2) = dist(p1,p2) = . 6 L2 Reg 2 L1 p6 p7 p1 4 p8 p5 2 p4 p3 Reg 1 0 2 4 6 8 10 12 14 16

  16. For the four points p5,p6,p7,p8, we use a line L3 to divide them and use similar method to find δ1 =Closest-pair(Region 3) = dist(p5,p6) = δ2 =Closest- pair (Region 4) = dist(p7,p8) = δ= min(δ1 ,δ2)= 6 L3 L2 Reg 2 L1 Reg 3 Reg 4 p6 p7 p1 4 p2 p8 p5 2 p4 p3 Reg 1 0 2 4 6 8 10 12 14 16

  17. Delete the points in Region 1 and 2 further than δ= from L3 • Compare the distance dist(p6,p8) with δ. Here dist(p6,p8) = >δ, δ is not updated. • Compare the distance dist(p6,p7) with δ. Here dist(p6,p7) = 1 < δ, δ is updated. • Closest-pair(Region 3 and 4) = dist(p6,p7) = 1. 6 L3 L2 Reg 2 L1 Reg 3 Reg 4 p6 p7 1 p1 4 p2 p8 p5 2 p4 p3 Reg 1 0 2 4 6 8 10 12 14 16

  18. Consider Region 1 , 2 and Region 3, 4 as two large regions. δ1 =Closest-pair(Region 1 and 2) = dist(p1,p2) = δ2 =Closest- pair (Region 3 and 4) = dist(p6,p7) = 1 δ= min(δ1 ,δ2)= 1 6 L3 L2 Reg 2 L1 Reg 3 Reg 4 p6 p7 1 p1 4 p2 p8 p5 2 p4 p3 Reg 1 0 2 4 6 8 10 12 14 16

  19. Delete the points in Region 1, 2, 3 and 4 further than δ= 1 from L1 • Here only one point p4 is left, δ is not updated. • Closest-pair(Region 1, 2, 3 and 4) = dist(p6,p7) = 1. 6 L3 L2 Reg 2 L1 Reg 3 Reg 4 p6 p7 1 p1 4 p2 p8 p5 2 p3 p4 Reg 1 0 2 4 6 8 10 12 14 16

  20. Closest pair of points Question: How to handle the case, where two points can have the same x-coordinate?

More Related