A comprehensive analysis of sorting and searching in correlation with computer programming theory and practice.