Class Summary for April 9, 1999 We did some additional examples of divide and conquer on the sample problems students were supposed to do for today. The general way to determine which of the three partitioning techniques (time, function, data) to use is: 1. Start by considering the data possibility. Does the problem description contain at least three different data collections that any problem solution would need to manipulate? If the problem description contains at least three data collections and any solution would need to do at least two different operations ( retrieve a value from, search through, sort, set a value, combine several values from), data should be used as the problem partitioning technique; 2. Otherwise consider time. Does the problem description contain a sequence of activities that need to be done? If such a sequence contains at least four different activities and at least sixty percent of the problem description is devoted to this sequence, use time as the partitioning technique. 3. Otherwise, use functions as the partitioning technique. Remember, we are partitioning the problem and its possible solution. We are not yet worrying about functions, classes, objects, or any other implementation concern. These come later.