Done GA3 up to 2
This commit is contained in:
parent
2775a6dfc4
commit
92e23c9507
2 changed files with 370 additions and 0 deletions
BIN
GA3/ga3.pdf
Normal file
BIN
GA3/ga3.pdf
Normal file
Binary file not shown.
370
GA3/ga3.tex
Normal file
370
GA3/ga3.tex
Normal file
|
@ -0,0 +1,370 @@
|
||||||
|
% vim: set ts=2 sw=2 tw=80 et:
|
||||||
|
\documentclass[12pt]{article}
|
||||||
|
|
||||||
|
\usepackage[margin=3cm]{geometry}
|
||||||
|
\usepackage{xcolor}
|
||||||
|
\usepackage{lmodern}
|
||||||
|
\usepackage{listings}
|
||||||
|
|
||||||
|
\title{Graded Assignment 3 -- DSA}
|
||||||
|
\author{Claudio Maggioni}
|
||||||
|
|
||||||
|
% listings configuration
|
||||||
|
\lstset{
|
||||||
|
basicstyle=\small\ttfamily,
|
||||||
|
frame=shadowbox,
|
||||||
|
rulesepcolor=\color{black},
|
||||||
|
columns=fullflexible,
|
||||||
|
commentstyle=\color{gray},
|
||||||
|
keywordstyle=\bfseries,
|
||||||
|
keywords={,while,if,elif,else,FUNCTION,return,for,from,to,TRUE,FALSE},
|
||||||
|
mathescape=true,
|
||||||
|
aboveskip=2em,
|
||||||
|
captionpos=b,
|
||||||
|
abovecaptionskip=1em,
|
||||||
|
belowcaptionskip=1em
|
||||||
|
}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
\maketitle
|
||||||
|
\tableofcontents
|
||||||
|
\lstlistoflistings
|
||||||
|
\newpage
|
||||||
|
|
||||||
|
\section{Exercise 1}
|
||||||
|
|
||||||
|
{\small\ttfamily
|
||||||
|
\begin{verbatim}
|
||||||
|
12
|
||||||
|
|
||||||
|
Insert 6:
|
||||||
|
12
|
||||||
|
/
|
||||||
|
6
|
||||||
|
|
||||||
|
Insert 1:
|
||||||
|
12
|
||||||
|
/
|
||||||
|
6
|
||||||
|
/
|
||||||
|
1
|
||||||
|
|
||||||
|
Insert 7:
|
||||||
|
12
|
||||||
|
///
|
||||||
|
6
|
||||||
|
/ \
|
||||||
|
1 7
|
||||||
|
|
||||||
|
Insert 4:
|
||||||
|
12
|
||||||
|
///
|
||||||
|
6
|
||||||
|
/// \
|
||||||
|
1 7
|
||||||
|
\
|
||||||
|
4
|
||||||
|
|
||||||
|
Insert 11:
|
||||||
|
12
|
||||||
|
//////
|
||||||
|
6
|
||||||
|
/// \
|
||||||
|
1 7
|
||||||
|
\ \
|
||||||
|
4 11
|
||||||
|
|
||||||
|
Insert 15:
|
||||||
|
12
|
||||||
|
////// \
|
||||||
|
6 15
|
||||||
|
/// \
|
||||||
|
1 7
|
||||||
|
\ \
|
||||||
|
4 11
|
||||||
|
|
||||||
|
Insert 9:
|
||||||
|
12
|
||||||
|
//////// \
|
||||||
|
6 15
|
||||||
|
/// \
|
||||||
|
1 7
|
||||||
|
\ \\\
|
||||||
|
4 11
|
||||||
|
/
|
||||||
|
9
|
||||||
|
|
||||||
|
Insert 5:
|
||||||
|
12
|
||||||
|
//////// \
|
||||||
|
6 15
|
||||||
|
///// \
|
||||||
|
1 7
|
||||||
|
\ \\\
|
||||||
|
4 11
|
||||||
|
\ /
|
||||||
|
5 9
|
||||||
|
|
||||||
|
Insert 13:
|
||||||
|
12
|
||||||
|
//////// \\\\
|
||||||
|
6 15
|
||||||
|
///// \ /
|
||||||
|
1 7 13
|
||||||
|
\ \\\
|
||||||
|
4 11
|
||||||
|
\ /
|
||||||
|
5 9
|
||||||
|
|
||||||
|
Insert 8:
|
||||||
|
12
|
||||||
|
////////// \\\\
|
||||||
|
6 15
|
||||||
|
///// \ /
|
||||||
|
1 7 13
|
||||||
|
\ \\\\\
|
||||||
|
4 11
|
||||||
|
\ /
|
||||||
|
5 9
|
||||||
|
/
|
||||||
|
8
|
||||||
|
|
||||||
|
Insert 14:
|
||||||
|
12
|
||||||
|
////////// \\\\\\\
|
||||||
|
6 15
|
||||||
|
///// \ ////
|
||||||
|
1 7 13
|
||||||
|
\ \\\\\ \
|
||||||
|
4 11 14
|
||||||
|
\ /
|
||||||
|
5 9
|
||||||
|
/
|
||||||
|
8
|
||||||
|
|
||||||
|
Insert 3:
|
||||||
|
12
|
||||||
|
////////// \\\\\\\
|
||||||
|
6 15
|
||||||
|
/////// \ ////
|
||||||
|
1 7 13
|
||||||
|
\\\ \\\\\ \
|
||||||
|
4 11 14
|
||||||
|
/ \ /
|
||||||
|
3 5 9
|
||||||
|
/
|
||||||
|
8
|
||||||
|
|
||||||
|
Insert 10:
|
||||||
|
12
|
||||||
|
///////////// \\\\\\\
|
||||||
|
6 15
|
||||||
|
/////// \ ////
|
||||||
|
1 7 13
|
||||||
|
\\\ \\\\\\\\ \
|
||||||
|
4 11 14
|
||||||
|
/ \ ////
|
||||||
|
3 5 9
|
||||||
|
/ \
|
||||||
|
8 10
|
||||||
|
|
||||||
|
Insert 2:
|
||||||
|
12
|
||||||
|
///////////// \\\\\\\
|
||||||
|
6 15
|
||||||
|
///////// \ ////
|
||||||
|
1 7 13
|
||||||
|
\\\\\ \\\\\\\\ \
|
||||||
|
4 11 14
|
||||||
|
/ \ ////
|
||||||
|
3 5 9
|
||||||
|
/ / \
|
||||||
|
2 8 10
|
||||||
|
|
||||||
|
Delete 6:
|
||||||
|
12
|
||||||
|
/////////// \\\\\\\
|
||||||
|
7 15
|
||||||
|
///////// \\\\\\\\ ////
|
||||||
|
1 11 13
|
||||||
|
\\\\\ //// \
|
||||||
|
4 9 14
|
||||||
|
/ \ / \
|
||||||
|
3 5 8 10
|
||||||
|
/
|
||||||
|
2
|
||||||
|
|
||||||
|
Delete 2:
|
||||||
|
12
|
||||||
|
/////////// \\\\\\\
|
||||||
|
7 15
|
||||||
|
/////// \\\\\\\\ ////
|
||||||
|
1 11 13
|
||||||
|
\\\ //// \
|
||||||
|
4 9 14
|
||||||
|
/ \ / \
|
||||||
|
3 5 8 10
|
||||||
|
|
||||||
|
Delete 12:
|
||||||
|
15
|
||||||
|
////
|
||||||
|
13
|
||||||
|
/////////// \
|
||||||
|
7 14
|
||||||
|
/////// \\\\\\\\
|
||||||
|
1 11
|
||||||
|
\\\ ////
|
||||||
|
4 9
|
||||||
|
/ \ / \
|
||||||
|
3 5 8 10
|
||||||
|
\end{verbatim}
|
||||||
|
}
|
||||||
|
|
||||||
|
\section{Exercise 2}
|
||||||
|
|
||||||
|
\subsection{Point A}
|
||||||
|
|
||||||
|
{\small\ttfamily
|
||||||
|
\begin{verbatim}
|
||||||
|
12B
|
||||||
|
|
||||||
|
Insert 6:
|
||||||
|
12B
|
||||||
|
/
|
||||||
|
6R
|
||||||
|
|
||||||
|
Insert 1:
|
||||||
|
6B
|
||||||
|
/ \
|
||||||
|
1R 12R
|
||||||
|
|
||||||
|
Insert 7:
|
||||||
|
6B
|
||||||
|
/ \\\\
|
||||||
|
1B 12B
|
||||||
|
/
|
||||||
|
7R
|
||||||
|
|
||||||
|
Insert 4:
|
||||||
|
6B
|
||||||
|
//// \\\\
|
||||||
|
1B 12B
|
||||||
|
\ /
|
||||||
|
4R 7R
|
||||||
|
|
||||||
|
Insert 11:
|
||||||
|
6B
|
||||||
|
//// \\\\
|
||||||
|
1B 11B
|
||||||
|
\ / \
|
||||||
|
4R 7R 12R
|
||||||
|
|
||||||
|
Insert 15:
|
||||||
|
11B
|
||||||
|
//// \
|
||||||
|
6R 12B
|
||||||
|
//// \ \
|
||||||
|
1B 7B 15R
|
||||||
|
\
|
||||||
|
4R
|
||||||
|
|
||||||
|
Insert 9:
|
||||||
|
11B
|
||||||
|
/////// \
|
||||||
|
6R 12B
|
||||||
|
//// \ \
|
||||||
|
1B 7B 15R
|
||||||
|
\ \
|
||||||
|
4R 9R
|
||||||
|
|
||||||
|
Insert 5:
|
||||||
|
6B
|
||||||
|
//// \\\\\\\
|
||||||
|
4B 11R
|
||||||
|
/ \ //// \
|
||||||
|
1R 5R 7B 12B
|
||||||
|
\ \
|
||||||
|
9R 15R
|
||||||
|
|
||||||
|
Insert 13:
|
||||||
|
11B
|
||||||
|
/////// \\\\\
|
||||||
|
6R 13B
|
||||||
|
//// \ / \
|
||||||
|
4B 7B 12R 15R
|
||||||
|
/ \ \
|
||||||
|
1R 5R 9R
|
||||||
|
|
||||||
|
Insert 8:
|
||||||
|
8B
|
||||||
|
//// \\\\
|
||||||
|
6R 11R
|
||||||
|
//// \ / \\\\\
|
||||||
|
4B 7R 9R 13B
|
||||||
|
/ \ / \
|
||||||
|
1R 5R 12R 15R
|
||||||
|
|
||||||
|
Insert 14:
|
||||||
|
8B
|
||||||
|
//// \\\\
|
||||||
|
6B 11B
|
||||||
|
//// \ / \\\\\
|
||||||
|
4B 7R 9B 13B
|
||||||
|
/ \ / \\\\\
|
||||||
|
1R 5R 12B 15B
|
||||||
|
/
|
||||||
|
14R
|
||||||
|
|
||||||
|
Insert 3:
|
||||||
|
6B
|
||||||
|
//// \\\\
|
||||||
|
4B 8R
|
||||||
|
//// \ / \\\\
|
||||||
|
1B 5B 7B 11B
|
||||||
|
\ / \\\\\
|
||||||
|
3R 9B 13B
|
||||||
|
/ \\\\\
|
||||||
|
12B 15B
|
||||||
|
/
|
||||||
|
14R
|
||||||
|
|
||||||
|
Insert 10:
|
||||||
|
6B
|
||||||
|
//// \\\\
|
||||||
|
4B 8R
|
||||||
|
//// \ / \\\\\\\\
|
||||||
|
1B 5B 7B 11B
|
||||||
|
\ ///// \\\\\
|
||||||
|
3R 9B 13B
|
||||||
|
\ / \\\\\
|
||||||
|
10R 12B 15B
|
||||||
|
/
|
||||||
|
14R
|
||||||
|
|
||||||
|
Insert 2:
|
||||||
|
6B
|
||||||
|
//// \\\\
|
||||||
|
4B 8R
|
||||||
|
//// \ / \\\\\\\\
|
||||||
|
2B 5B 7B 11B
|
||||||
|
/ \ ///// \\\\\
|
||||||
|
1R 3R 9B 13B
|
||||||
|
\ / \\\\\
|
||||||
|
10R 12B 15B
|
||||||
|
/
|
||||||
|
14R
|
||||||
|
\end{verbatim}
|
||||||
|
}
|
||||||
|
|
||||||
|
\subsection{Point B}
|
||||||
|
|
||||||
|
A red-black tree of n distinct elements has an height between $log(n)$
|
||||||
|
and $2 log(n)$ thanks to the red-black tree invariant. The worst-case insertion
|
||||||
|
complexity is $log(n)$ since finding the right place to insert is as complex as
|
||||||
|
a regular tree (i.e. logarithmic) and the ``fixup'' operation is logarithmic as
|
||||||
|
well (the tree traversal is logarithmic while operations in each iteration are constant).
|
||||||
|
In asymptotic terms, the uneven height of leaves in the tree does not make a difference
|
||||||
|
since it is a constant factor (since the maximum height is $2 log(n)$ and the minimum one is $log(n)$.
|
||||||
|
|
||||||
|
\end{document}
|
Reference in a new issue