The document discusses four sorting algorithms: selection sort, insertion sort, bubble sort, and shellsort. It provides explanations of how each algorithm works, examples of pseudocode and walking through examples, and analyses of the time and space complexity of each algorithm. Selection sort and insertion sort have quadratic time complexity while bubble sort and shellsort have various improvements but are still generally quadratic.