vii heapsort binsort and radix sort an empirical comparison of sorting algorithms lower bounds for sorting further reading exercises projects file processing and external sorting primary versus secondary storage disk drives disk drive architecture disk access costs buffers and buffer pools the programmer' view of files external sorting simple approaches to external sorting replacement selection multiway merging further reading exercises projects searching searching unsorted and sorted arrays self-organizing lists bit vectors for representing sets hashing hash functions open hashing closed hashing analysis of closed hashing deletion