Summary Files Commits Branches @commit @diff @stats
diff options
context:
space:
mode:
Commitf04cedc23e57fdf679ff4edc9761dce8b1d6a0c4 (patch)
Author
 Syndamia <kamen@syndamia.com>
2023-03-27 17:50:48 +0300
Committer
 Syndamia <kamen@syndamia.com>
2023-03-27 17:50:48 +0300
Filesa0bc48aa3991da7973941001fdb49e6c4376038b
uni-projects-f04cedc23e57fdf679ff4edc9761dce8b1d6a0c4.tar
uni-projects-f04cedc23e57fdf679ff4edc9761dce8b1d6a0c4.tar.gz
uni-projects-f04cedc23e57fdf679ff4edc9761dce8b1d6a0c4.zip
Parent46a127b42678f79827fd558e05a7334dabce0a98 (diff)
[DAA/H1] Added missing part from ex3 and did minor formatting changes
2 files changed, 10 insertions, 11 deletions
-rw-r--r--Year 2/Design and analysis of algorithms/Homeworks/Homework1.pdfbin60083 -> 60370 bytes
-rw-r--r--Year 2/Design and analysis of algorithms/Homeworks/Homework1.tex21
diff --git a/Year 2/Design and analysis of algorithms/Homeworks/Homework1.pdf b/Year 2/Design and analysis of algorithms/Homeworks/Homework1.pdf
index b96b97e..c76c68b 100644
--- a/Year 2/Design and analysis of algorithms/Homeworks/Homework1.pdf
+++ b/Year 2/Design and analysis of algorithms/Homeworks/Homework1.pdf
Binary files differ
diff --git a/Year 2/Design and analysis of algorithms/Homeworks/Homework1.tex b/Year 2/Design and analysis of algorithms/Homeworks/Homework1.tex
index 762021e..53f2a54 100644
--- a/Year 2/Design and analysis of algorithms/Homeworks/Homework1.tex
+++ b/Year 2/Design and analysis of algorithms/Homeworks/Homework1.tex
@@ -113,9 +113,7 @@
\section{Решение}
-$\textsc{SomeAlg}(A, l, h)$ сортира подмасива $A[l..h]$ на $A[1..n]$. Тоест, $\textsc{SomeAlg}(A, 1, n)$ ще сортира целия масив.
-
-\hfill
+$\textsc{SomeAlg}(A, l, h)$ сортира подмасива $A[l..h]$ на $A[1..n]$. Тоест, $\textsc{SomeAlg}(A, 1, n)$ ще сортира целия масив $A[1..n]$.
Ще докажем коректността на алгоритъма с индукция по $h-l$ (което се явява дължината на нашия подмасив минус едно).
@@ -137,14 +135,15 @@ $\textsc{SomeAlg}(A, l, h)$ сортира подмасива $A[l..h]$ на $A[
На ред 8 сортираме всички останали елементи, които са в $\alpha\beta$ (и са по-малки от тези в $\gamma$). \newline
Така целия подмасив е вече сортиран.
\end{enumerate}
-
+
+\hfill
+
Сложност по време: ако на алгоритъма са му подадени $n$ елемента, в общия случай на редове 2 до 5 той извършва работа, която не зависи от входа, тоест константа работа $c$, докато на редове 6 до 8, общо три пъти извиква себе си с $\frac{2}{3}$ дължината на входа. Тоест, рекурентното уравнение ще бъде:
-\begin{align*}
- T(n) = 3T\left(\frac{2}{3}n\right) + c
-\end{align*}
-Тогава:
-\begin{align*}
- a = 3, b = \frac{3}{2}, f(n) = c \quad \text{За } \varepsilon = 1, f(n) \preceq \frac{n^{\log_\frac{3}{2} 3}}{n}, \log_\frac{3}{2} 3 - 1 > 0 \xRightarrow[]{\text{1 случай на Мастър Теоремата}} T(n) \asymp n^{\log_\frac{3}{2} 3}
-\end{align*}
+\begin{gather*}
+ T(n) = 3T\left(\frac{2}{3}n\right) + c \text{, тогава} \\
+ a = 3, b = \frac{3}{2}, f(n) = c \quad \text{За } \varepsilon = 1, f(n) \preceq \frac{n^{\log_\frac{3}{2} 3}}{n}, \log_\frac{3}{2} 3 - 1 > 0 \xRightarrow[\text{Мастър Теоремата}]{\text{1 случай на}} T(n) \asymp n^{\log_\frac{3}{2} 3}
+\end{gather*}
+
+Проф. Дълбоков не е прав, проверката е нужна, понеже иначе $h - l \leq 0$ и на ред 4: $t \leq 0$, тоест условието на ред 5 никога няма да бъде изпълнено и алгоритъмът ще завърши без да сортира масива.
\end{document} \ No newline at end of file