Переглянути джерело

HW2: A small proof section added

tags/v2.0
Christos Choutouridis 1 тиждень тому
джерело
коміт
9052eb0740
2 змінених файлів з 33 додано та 4 видалено
  1. BIN
      homework_2/report/homework_2_report.pdf
  2. +33
    -4
      homework_2/report/homework_2_report.tex

BIN
homework_2/report/homework_2_report.pdf Переглянути файл


+ 33
- 4
homework_2/report/homework_2_report.tex Переглянути файл

@@ -140,7 +140,7 @@
Η τάξη αυτή προσφέρει δυνατότητες χρονομέτρησης μίας ή και πολλαπλών κλήσεων αθροίζοντας τους χρόνους.
\end{itemize}
\par
Όλοι οι παραπάνω τύποι είναι templates, και βρίσκονται στα αντίστοιχα headers (.hpp) αντί στα αρχεία .cpp.
Όλοι οι παραπάνω τύποι είναι templates, και βρίσκονται στα αντίστοιχα headers (.hpp) αντί για αρχεία .cpp.
Η συνάρτηση \textit{main()} που υλοποιεί τον αλγόριθμο, αλλά και αυτή που καλεί τα unit tests, μαζί με τον validator και το command line interface βρίσκονται στο αρχείο main.cpp.

\subsection{Model version}
@@ -232,7 +232,7 @@
Θα περίμενε λοιπόν κάποιος να υπάρχει ένας τρόπος να αποφευχθεί η μεταφορά δεδομένων που θα παραμείνουν.
Πράγματι, όπως αποδεικνύεται και στο παράρτημα \ref{appendix:ExchangeOpt}, αν έχουμε δύο \textbf{ταξινομημένες} ακολουθίες που η μία θα κρατήσει τα μέγιστα $L_i$ και η άλλη θα κρατήσει τα ελάχιστα $S_i$, τότε τα δεδομένα που θα καταλήξουν να χρειάζονται ανταλλαγή \textbf{για την κάθε ακολουθία} βρίσκονται στο υποσύνολο επικάλυψης:
\[
E = \{l_i, l_{i+1}, ... , l_j\}, i \le j: \quad L_{min} \le l_x \le S_{max},\quad \forall l_x \in E
E = \{l_x\}_{x=i}^j: \quad L_{min} \le l_x \le S_{max}
\]
Δηλαδή στο κομμάτι της ακολουθίας με τα στοιχεία που είναι \textbf{\textit{μεγαλύτερα από το μικρότερο αυτής που κρατάει τα μεγάλα $L_{min}$ και μικρότερα από το μεγαλύτερο αυτής που κρατάει τα μικρά $S_{max}$}}.
Αν το σύνολο επικάλυψης $E_1, E_2$ των ακολουθιών:
@@ -367,11 +367,40 @@ Exch. Optimi-zation } & N1P2 - q=20 & \st{191 ms} &\st{72.5 ms}&\st{4.76 ms}&
Ο αναγνώστης παρ' όλα αυτά μπορεί να βρει \href{\selfref}{εδώ} μια \textit{μελλοντική έκδοση} της αναφοράς η οποία όταν εκτελεστούν τα scripts θα συμπεριλαμβάνει τις μετρήσεις αυτές. \label{ft:measurements}
}


\newpage
\appendix
\section{Παράρτημα}
\subsection{Υπολογισμός συνόλου ανταλλαγής ταξινομημένων ακολουθιών}
\label{appendix:ExchangeOpt}

Έστω ...

Έστω $L, S$ δύο ταξινομημένες ακολουθίες μεγέθους $N$, μία αύξουσα και μία φθίνουσα.
\[
L=\{l_i\}_{i=1}^N, S=\{s_i\}_{i=1}^N, \quad l_i, s_i \in \mathbf{R}
\]
Έστω $f$ συνάρτηση η οποία παίρνει δύο ταξινομημένες ακολουθίες \( L = \{l_i\}_{i=1}^N \) και \( S = \{s_i\}_{i=1}^N \), και επιστρέφει δύο ακολουθίες \( L' = \{l'_i\}_{i=1}^N \) και \( S' = \{s'_i\}_{i=1}^N \):
\[
f \colon (\mathbf{R}^N, \mathbf{R}^N) \to (\mathbf{R}^N, \mathbf{R}^N), \qquad
f(L, S) = (L', S') = \left(\{\max(l_i, s_i)\}_{i=1}^N, \{\min(l_i, s_i)\}_{i=1}^N\right).
\]
Όπου, η \( L' \) περιέχει τα μεγαλύτερα στοιχεία από τη σύγκριση στοιχείο με στοιχείο \( l_i \) και \( s_i \), ενώ η \( S' \) περιέχει τα μικρότερα.
Αν $l_{min}$ το μικρότερο στοιχείο της $L$ και $s_{max}$ το μεγαλύτερο στοιχείο της $S$, τότε:
\[
\begin{aligned}
\exists E_L=\{e_i\}_{i=1}^m \subseteq L: e_i > s_{max} \ge s_i \forall i \\
\exists E_S=\{s_i\}_{i=1}^m \subseteq S: s_i < l_{min} \le e_1 \forall i
\end{aligned}
\]
Άρα:
\[
f(E_L, S_L) = \left(\{\max(e_i, s_i)\}_{i=1}^m, \{\min(e_i, s_i)\}_{i=1}^m\right) = \left(\{e_i\}_{i=1}^m, \{s_i\}_{i=1}^m\right) = (E_L, E_S)
\]
Επομένως υπάρχουν τα υποσύνολα $E_L\subseteq L, E_S\subseteq S$, τα οποία δεν επηρεάζονται από τη συνάρτηση $f$, και άρα δεν ανταλλάσουν τα στοιχεία μεταξύ τους.
Έτσι τα υποσύνολα τα οποία αλλάζουν στοιχεία είναι:
\[
\begin{aligned}
L_{ex} = L \setminus E_L = \{l_{min}, \dots, s_{max}\}, l_{min} \le s_{max}\\
S_{ex} = S \setminus E_S = \{l_{min}, \dots, s_{max}\}, l_{min} \le s_{max}
\end{aligned}
\]
\end{document}

Завантаження…
Відмінити
Зберегти