segregated list + bst + best fit