\documentclass[12pt]{article}

\title{Outline Example: Sorting Algorithms}
\date{2021-02-25}
\author{Nathan Sommer}

\usepackage[left=1in,right=1in,top=1in,bottom=1in]{geometry}
\usepackage{amsmath}
\usepackage{hyperref}
\usepackage{setspace}

\doublespace

\begin{document}

\maketitle

% Latex can automatically build a table of contents for you
\tableofcontents

\section{Introduction}

Brief history of sorting algorithms and their importance.

\subsection{Project Goals}

Briefly describe the goal of writing a custom sorting algorithm and comparing
its performance against other implementations

\section{Classic Sorting Algorithms}

Discuss the most widely known sorting algorithms commonly found in textbooks.

\subsection{Quadratic Sorting Algorithms}

\subsubsection{Bubble Sort}

\subsubsection{Insertion Sort}

\subsubsection{Selection Sort}

\subsection{Recursive Sorting Algorithms}

\subsubsection{Quicksort}

\subsubsection{Mergesort}

\subsubsection{Heapsort}

\section{Practical Sorting Implementations}

Discuss real examples of widely used sorting implementations.

\subsection{Sorting in Python: Timsort}

\subsection{Sorting in C++: GCC's Introsort}

\section{Super Duper Sort}

Introduce the ideas behind Super Duper Sort

\subsection{Implementation}

\subsection{Timing Experiments}

\section{Conclusion}

\end{document}