whats a laundry rack?
This commit is contained in:
parent
25ed9654d3
commit
5829e05a84
4 changed files with 40 additions and 10 deletions
BIN
figs/rack.jpeg
Normal file
BIN
figs/rack.jpeg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 49 KiB |
BIN
main.pdf
BIN
main.pdf
Binary file not shown.
|
|
@ -7,6 +7,7 @@
|
||||||
\usepackage{algorithm}
|
\usepackage{algorithm}
|
||||||
\usepackage{algorithmicx}
|
\usepackage{algorithmicx}
|
||||||
\usepackage{algpseudocode}
|
\usepackage{algpseudocode}
|
||||||
|
\usepackage{emoji}
|
||||||
|
|
||||||
|
|
||||||
\newcommand{\acronym}{<stupid acronym>}
|
\newcommand{\acronym}{HADES }
|
||||||
45
project.tex
45
project.tex
|
|
@ -1,8 +1,8 @@
|
||||||
\twocolumn[
|
\twocolumn[
|
||||||
\title{\bf \acronym - An algorithm for faster sock sorting}
|
\title{\bf \acronym (High end, Advanced, Data driven, Enterprise grade Sock sorting algorithm) - An algorithm for faster sock sorting}
|
||||||
\author{
|
\author{
|
||||||
CelloClemens$^{1,2}$,
|
CelloClemens$^{1,2}$,
|
||||||
Henriente$^{1}$,
|
Henri\emoji{duck}$^{1}$,
|
||||||
}
|
}
|
||||||
\date{\today}
|
\date{\today}
|
||||||
% List of institutions
|
% List of institutions
|
||||||
|
|
@ -46,13 +46,13 @@ $s^{-1}$.
|
||||||
\centering
|
\centering
|
||||||
\includegraphics[width=\columnwidth]{\projectpath figs/Sock.jpeg}
|
\includegraphics[width=\columnwidth]{\projectpath figs/Sock.jpeg}
|
||||||
\vspace{0.1in}
|
\vspace{0.1in}
|
||||||
\caption{Three single socks.}
|
\caption{A pair of blue socks and a single orange sock.}
|
||||||
\label{fig:Sock}
|
\label{fig:Sock}
|
||||||
\vspace{0.1in}
|
\vspace{0.1in}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
\subsubsection{Laundry basket}
|
\subsubsection{Laundry basket}
|
||||||
Let $\Lambda\subseteq\Lambda_a$ be a set of laundry items. Then a laundry basket is a
|
Let $\Lambda\subseteq\Lambda_a$ be a set of laundry items. Then a laundry basket is a
|
||||||
triple $(\Lambda, +, -)$ representing a data structure that implements
|
triplet $(\Lambda, +, -)$ representing a datastructure that implements
|
||||||
the following functions:
|
the following functions:
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item \texttt{get: }$\mathscr{L}\in\Lambda_a$, returns a uniformly random
|
\item \texttt{get: }$\mathscr{L}\in\Lambda_a$, returns a uniformly random
|
||||||
|
|
@ -70,7 +70,7 @@ To fully appreciate the gravity of \acronym it has to first be discussed
|
||||||
how most resent research tackles the problem of sock sorting.
|
how most resent research tackles the problem of sock sorting.
|
||||||
The following code describes the most recently developed sock sorting
|
The following code describes the most recently developed sock sorting
|
||||||
algorithm from the paper by \citeauthor{My colleague et al.} Which is the current
|
algorithm from the paper by \citeauthor{My colleague et al.} Which is the current
|
||||||
industry standard. Notice whe code has a runtime complexity of $\mathcal{O}(n^2)$.
|
industry standard. Notice the code has a runtime complexity of $\mathcal{O}(n^2)$.
|
||||||
|
|
||||||
\begin{algorithm}
|
\begin{algorithm}
|
||||||
\caption{Conventional sock sorting}\label{euclid}
|
\caption{Conventional sock sorting}\label{euclid}
|
||||||
|
|
@ -88,8 +88,39 @@ industry standard. Notice whe code has a runtime complexity of $\mathcal{O}(n^2)
|
||||||
\Until{$\mathscr{L}\ne\mathscr{L}_0$}
|
\Until{$\mathscr{L}\ne\mathscr{L}_0$}
|
||||||
\end{algorithmic}
|
\end{algorithmic}
|
||||||
\end{algorithm}
|
\end{algorithm}
|
||||||
\section{Methodology}
|
|
||||||
|
|
||||||
|
\section{Concepts}
|
||||||
|
The basis for every fast algorithm are simple yet equally fast
|
||||||
|
datastructures. To enable the low runtime achieved by \acronym,
|
||||||
|
the introduction of a new datastructure, the "laundry rack" is integral.
|
||||||
|
|
||||||
|
\subsection{Laundry rack}
|
||||||
|
Let $\Lambda\subseteq\Lambda_a$ be a set of laundry. A laundry rack (See figure \ref{fig:Rack}) is a
|
||||||
|
triplet $(\Lambda, +, -)$ representing a datastructure that implements the
|
||||||
|
following methods:
|
||||||
|
\begin{itemize}
|
||||||
|
\item \texttt{get($\mathscr{L}\in\Lambda$)}: $\mathscr{L}\in\Lambda$, gets
|
||||||
|
a specific laundry item from the laundry rack.
|
||||||
|
\item \texttt{put($\mathscr{L}\in\Lambda$)}, deposits a laundry item onto
|
||||||
|
the laundry rack.
|
||||||
|
\item \texttt{match($\mathscr{L}\in\Lambda$)}: $(\mathscr{P}\in\Lambda\times\Lambda)|\mathscr{L}_0$,
|
||||||
|
returns a tuple $(\mathscr{L}, \mathscr{L}^{-1})$ representing
|
||||||
|
a pair of socks iff $\mathscr{L}^{-1}$ is already on the laundry rack,
|
||||||
|
$\mathscr{L}_0$ otherwise.
|
||||||
|
\end{itemize}
|
||||||
|
All these operations (especially \texttt{match}) run in $\mathcal{O}(1)$,
|
||||||
|
making iteration over all $n$ laundry items to find a pair $(\mathscr{L}, \mathscr{L}^{-1})$
|
||||||
|
obsolete.
|
||||||
|
\begin{figure}[h]
|
||||||
|
\centering
|
||||||
|
\includegraphics[width=\columnwidth]{\projectpath figs/rack.jpeg}
|
||||||
|
\vspace{0.1in}
|
||||||
|
\caption{A blue drying rack, found in many housholds.}
|
||||||
|
\label{fig:Rack}
|
||||||
|
\vspace{0.1in}
|
||||||
|
\end{figure}
|
||||||
|
|
||||||
|
\section{Algorithm}
|
||||||
\section{Discussion and Results}
|
\section{Discussion and Results}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -97,8 +128,6 @@ industry standard. Notice whe code has a runtime complexity of $\mathcal{O}(n^2)
|
||||||
|
|
||||||
\section{Acknowledgements}
|
\section{Acknowledgements}
|
||||||
|
|
||||||
I did this all by myself, so I'm kinda awesome. But I guess I hocked and edited this template from the cowshed article so thanks for that William Roper
|
|
||||||
|
|
||||||
\begingroup
|
\begingroup
|
||||||
\setlength\bibitemsep{0pt}
|
\setlength\bibitemsep{0pt}
|
||||||
\setlength\bibnamesep{0pt}
|
\setlength\bibnamesep{0pt}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue