\documentclass{article} \usepackage{graphicx} \graphicspath{ {./images/} } \usepackage[utf8]{inputenc} \usepackage{float} \usepackage{indentfirst} \setlength{\parskip}{\baselineskip}% \title{CS 7353: Analysis of Algorithms Project: Red-Black Tree} \author{Noah Schrick} \date{April 21, 2022} \begin{document} \maketitle \tableofcontents \section{Problem Introduction} \section{Program Platform and Submission Files} This problem was solved using C++ on a Linux system. Attached with the submission is a zip folder that contains: \begin{itemize} \item{A CMakeLists.txt file for compiling} \item{An "images" folder that contains:} \begin{enumerate} \item{Various images included in this report} \end{enumerate} \item{A "src" folder that contains:} \begin{enumerate} \item{A Node.cpp and Node.h file for the Node class and associated functions} \item{A Red-Black.cpp and Red-Black.h file for the Red-Black Tree class and associated functions} \item{The main file} \end{enumerate} \item{A "build" folder that contains:} \begin{enumerate} \item{A build.sh script to simplify the build process} \item{A run.sh script to simplify running the program} \item{Various CMake files} \item{The compiled binaries for the program and associated libraries} \end{enumerate} \item{Various LaTeX files used in the generation of this report.} \end{itemize} This program offers no guarantee of functionality on other Operating Systems. Testing was only conducted on the local Linux machine. \section{Programming Approach} \subsection{Node Class} \subsection{Red-Black Tree Class} \subsubsection{Constructing the Problem} \subsubsection{Generating the Solution} \subsubsection{Printing the solution} \label{sec:print} \section{Results} \subsection{Part 1.B: ``Tree 1"} \begin{figure}[htp] \centering \includegraphics[width=\linewidth]{"./images/b_init_tree.png"} \vspace{.2truein} \centerline{} \caption{Part 1.B: Initial Tree After Key Insertions} \label{fig:b_init} \end{figure} \begin{figure}[htp] \centering \includegraphics{"./images/b_del_12.png"} \vspace{.2truein} \centerline{} \caption{Part 1.B: Tree After Deleting Key 12} \label{fig:b_12} \end{figure} \begin{figure}[htp] \centering \includegraphics{"./images/b_ins_32.png"} \vspace{.2truein} \centerline{} \caption{Part 1.B: Tree After Inserting Key 32} \label{fig:b_32} \end{figure} \begin{figure}[htp] \centering \includegraphics{"./images/b_del_41.png"} \vspace{.2truein} \centerline{} \caption{Part 1.B: Tree After Deleting Key 41} \label{fig:b_41} \end{figure} \subsection{Part 1.C: ``Tree 2"} \begin{figure}[htp] \includegraphics[width=\linewidth]{"./images/c_init_tree.png"} \vspace{.2truein} \centerline{} \caption{Part 1.C: Initial Tree After Key Insertions} \label{fig:b_init} \end{figure} \begin{figure}[htp] \includegraphics[width=\linewidth]{"./images/c_del_127.png"} \vspace{.2truein} \centerline{} \caption{Part 1.C: Tree After Deleting Key 127} \label{fig:c_127} \end{figure} \begin{figure}[htp] \includegraphics[width=\linewidth]{"./images/c_del_221.png"} \vspace{.2truein} \centerline{} \caption{Part 1.C: Tree After Deleting Key 221} \label{fig:c_221} \end{figure} \section{Part 2: Red-Black Discussion} \end{document}