Selection Trees
What are selection trees? Complete binary tree Each node represents a “match” Winner Trees Loser Trees
Diagram – max winner tree … … … … … … … … 7
Diagram – max loser tree … … … … … … … … 7
Runtimes Complexities Initialize r = the number of runs = number of leaf nodes r-1 comparison nodes O(r) to initialize r-runs Compare O(1) Remove winner and Replay O(logr) Total Time for n elements O(nlogr)
What’s this good for? External Sorting Package Loading Problem
Truck Loading Problem n parcels from r sources each parcel has a weight and a size minimize the number of trucks
First Fit Packing with Max Winner Tree Use a max winner tree in which n parcels are t trucks One at a time in left to right order Current item is packed in the left-most into which it fits If there is no truck into which it fits, start a new truck
Best Fit Object is packed into the bin with the least unused capacity that is at least the size of the object If conditions are not met, start a new truck