init template presentation
This commit is contained in:
parent
9f8c649e11
commit
262f1d3f73
323
main.tex
Normal file
323
main.tex
Normal file
@ -0,0 +1,323 @@
|
|||||||
|
\documentclass[usenames,dvipsnames]{beamer}
|
||||||
|
%----------------------------------------------------------------------------------------
|
||||||
|
% Struktur und Pointer Referat
|
||||||
|
% 20.04.2020
|
||||||
|
%----------------------------------------------------------------------------------------
|
||||||
|
\usetheme{focus}
|
||||||
|
|
||||||
|
\usepackage[utf8]{inputenc}
|
||||||
|
|
||||||
|
\usepackage{booktabs}
|
||||||
|
\usepackage{amsmath}
|
||||||
|
\usepackage{hyperref}
|
||||||
|
\usepackage{graphicx}
|
||||||
|
\usepackage{listings}
|
||||||
|
\usepackage{xcolor}
|
||||||
|
|
||||||
|
% Farbdefinitionen
|
||||||
|
\definecolor{backgroundcoloreq}{RGB}{180,140,0}
|
||||||
|
\definecolor{codegreen}{rgb}{0,0.6,0}
|
||||||
|
\definecolor{codegray}{rgb}{0.5,0.5,0.5}
|
||||||
|
\definecolor{codepurple}{rgb}{0.58,0,0.82}
|
||||||
|
\definecolor{codeorange}{RGB}{190,100,0}
|
||||||
|
|
||||||
|
|
||||||
|
\lstset{
|
||||||
|
language=C,
|
||||||
|
basicstyle=\ttfamily,
|
||||||
|
numbers=left,
|
||||||
|
numberstyle=\tiny,
|
||||||
|
tabsize=4,
|
||||||
|
columns=fixed,
|
||||||
|
showstringspaces=false,
|
||||||
|
showtabs=false,
|
||||||
|
breaklines=true,
|
||||||
|
keepspaces,
|
||||||
|
morekeywords={std},
|
||||||
|
keywordstyle=\color{blue}\ttfamily,
|
||||||
|
stringstyle=\color{red}\ttfamily,
|
||||||
|
commentstyle=\color{OliveGreen!85}\ttfamily,
|
||||||
|
numberstyle=\tiny\color{codegray},
|
||||||
|
basicstyle=\footnotesize\selectfont\ttfamily,
|
||||||
|
% keyword highlighting
|
||||||
|
classoffset=1, % starting new class
|
||||||
|
otherkeywords={>,<,.,;,-,+,!,=,~,:,[,],NULL,&},
|
||||||
|
morekeywords={>,<,.,;,-,+,!,=,~,:,[,],NULL,&},
|
||||||
|
keywordstyle=\color{codeorange},
|
||||||
|
classoffset=0
|
||||||
|
}
|
||||||
|
|
||||||
|
%----------------------------------------------------------------------------------------
|
||||||
|
% TITLE SLIDE
|
||||||
|
%----------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
\title{Cross-Model Pseudo-Labeling}
|
||||||
|
|
||||||
|
\subtitle{for Semi-Supervised Action Recognition}
|
||||||
|
|
||||||
|
\author{Lukas Heiligenbrunner}
|
||||||
|
|
||||||
|
\date{\today}
|
||||||
|
|
||||||
|
%------------------------------------------------
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
%------------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}
|
||||||
|
\maketitle
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
%----------------------------------------------------------------------------------------
|
||||||
|
% SECTION 2
|
||||||
|
%----------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
\section{The Problem} % Section title slide, unnumbered
|
||||||
|
|
||||||
|
%------------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}{Missing Labels}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Variable die Speicheradresse enthält
|
||||||
|
\item Pointer zeigt wo das Objekt zu finden ist.
|
||||||
|
\item nicht alle Pointer enthalten Adresse
|
||||||
|
\begin{itemize}
|
||||||
|
\item NULL-Pointer
|
||||||
|
\end{itemize}
|
||||||
|
\item Operator *
|
||||||
|
\begin{itemize}
|
||||||
|
\item definiert einen Pointer
|
||||||
|
\item Wert eines Pointers
|
||||||
|
\end{itemize}
|
||||||
|
\item Operator \&
|
||||||
|
\begin{itemize}
|
||||||
|
\item Adresse einer Variable
|
||||||
|
\end{itemize}
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
%------------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}[fragile]{Pointer Syntax}
|
||||||
|
\begin{lstlisting}
|
||||||
|
#include <stdio.h>
|
||||||
|
int main()
|
||||||
|
{
|
||||||
|
// Variable definieren
|
||||||
|
int num = 10;
|
||||||
|
|
||||||
|
// Pointer definieren
|
||||||
|
int *p;
|
||||||
|
|
||||||
|
// Adresse von num --> p zuweisen
|
||||||
|
p = #
|
||||||
|
|
||||||
|
printf("Num: %d", *p);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
\end{lstlisting}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
%------------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}{Pointer in Java}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Alle Objekte automatisch Pointer
|
||||||
|
\item Primitives (int, float, double) keine Pointer
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
%----------------------------------------------------------------------------------------
|
||||||
|
% SECTION 2
|
||||||
|
%----------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
\section{Strukturen} % Section title slide, unnumbered
|
||||||
|
|
||||||
|
%------------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}{Strukturen Allgemein}
|
||||||
|
\begin{itemize}
|
||||||
|
\item kategorisieren von Variablen
|
||||||
|
\begin{itemize}
|
||||||
|
\item Variablen \textit{(int, char, double, float)}
|
||||||
|
\item Pointer
|
||||||
|
\item Arrays
|
||||||
|
\end{itemize}
|
||||||
|
\item Keyword \textit{struct}
|
||||||
|
\item verbessert Übersicht
|
||||||
|
\item Schritt Richtung Objektorientierung
|
||||||
|
\item ideal für Listen und Baumstruktur
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
%------------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}[fragile, allowframebreaks]{C Syntax}
|
||||||
|
Definition:
|
||||||
|
\begin{lstlisting}
|
||||||
|
struct Adresse {
|
||||||
|
char name[50];
|
||||||
|
int *nummer;
|
||||||
|
short hausnummer;
|
||||||
|
long plz;
|
||||||
|
};\end{lstlisting}
|
||||||
|
Anwendung:
|
||||||
|
\begin{lstlisting}
|
||||||
|
// Variable der Struktur erstellen
|
||||||
|
struct Adresse adresseKurt;
|
||||||
|
// Zugriff auf die Elemente
|
||||||
|
strcpy(adresseKurt.name, "Kurt Kanns");
|
||||||
|
adresseKurt.hausnummer = 23;
|
||||||
|
int nr = 4;
|
||||||
|
adresseKurt.nummer = &nr;
|
||||||
|
adresseKurt.plz = 45678;\end{lstlisting}
|
||||||
|
|
||||||
|
\framebreak
|
||||||
|
|
||||||
|
Typdefinition mit typedef:
|
||||||
|
\begin{lstlisting}
|
||||||
|
struct Adresse {
|
||||||
|
char name[50];
|
||||||
|
short hausnummer;
|
||||||
|
};
|
||||||
|
typedef struct Adresse Adr;
|
||||||
|
|
||||||
|
Adr a1,a2; // Datentyp Adr
|
||||||
|
\end{lstlisting}
|
||||||
|
|
||||||
|
Kombination:
|
||||||
|
\begin{lstlisting}
|
||||||
|
typedef struct Adresse {
|
||||||
|
char name[50];
|
||||||
|
short hausnummer;
|
||||||
|
} Adr;
|
||||||
|
|
||||||
|
Adr a1,a2; // Datentyp Adr
|
||||||
|
\end{lstlisting}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
\begin{frame}{Sonstiges}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Strukturtypdeklaration: struct Adresse \{…\};
|
||||||
|
\item Zugriff auf einzelne Komponenten durch\\
|
||||||
|
Punktnotation: (Adresse1.Vorname = “Peter“);
|
||||||
|
\item Pfeilnotation (->) wenn struct Pointer
|
||||||
|
\item Gesamtlänge der Struktur: sizeof(<Struktur>)
|
||||||
|
\item Weiteres hinzufügen von Komponenten während der Laufzeit nicht möglich.
|
||||||
|
\end{itemize}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
%------------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}[fragile]{Strukturen als Funktionsargument}
|
||||||
|
Ohne Typedef:
|
||||||
|
\begin{lstlisting}
|
||||||
|
void testfunc(struct Adresse a){
|
||||||
|
long plz = a.plz;
|
||||||
|
}
|
||||||
|
\end{lstlisting}
|
||||||
|
Mit Typedef:
|
||||||
|
\begin{lstlisting}
|
||||||
|
void testfunc(Adr a){
|
||||||
|
long plz = a.plz;
|
||||||
|
}
|
||||||
|
\end{lstlisting}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
%------------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}[fragile]{Strukturen in Java}
|
||||||
|
\begin{itemize}
|
||||||
|
\item existieren nicht
|
||||||
|
\item stattdessen Klassen
|
||||||
|
\end{itemize}
|
||||||
|
\begin{lstlisting}[language=java]
|
||||||
|
public class Adresse
|
||||||
|
{
|
||||||
|
String name;
|
||||||
|
String strasse;
|
||||||
|
short hausnummer;
|
||||||
|
long plz;
|
||||||
|
String stadt;
|
||||||
|
}
|
||||||
|
\end{lstlisting}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
%----------------------------------------------------------------------------------------
|
||||||
|
% SECTION 3
|
||||||
|
%----------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
\section{Anwendung} % Section title slide, unnumbered
|
||||||
|
|
||||||
|
%------------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}[fragile]{Struktur als Pointer}
|
||||||
|
\begin{lstlisting}
|
||||||
|
struct mystruct {
|
||||||
|
int data;
|
||||||
|
};
|
||||||
|
typedef struct MyStruct MyStruct;
|
||||||
|
|
||||||
|
void beispiel(MyStruct * str) {
|
||||||
|
int d = str->data;
|
||||||
|
int dd = (*str).data; // equivalent
|
||||||
|
}
|
||||||
|
|
||||||
|
int main(){
|
||||||
|
MyStruct struc;
|
||||||
|
struc.data = 5;
|
||||||
|
beispiel(&struc);
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
\end{lstlisting}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
%------------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}[fragile]{Verkettete Listen}
|
||||||
|
\begin{lstlisting}
|
||||||
|
struct node {
|
||||||
|
int data;
|
||||||
|
struct node* next; /* Typ Node hier nicht moeglich
|
||||||
|
da erst spaeter definiert */
|
||||||
|
};
|
||||||
|
typedef struct node Node;
|
||||||
|
|
||||||
|
void beispiel() {
|
||||||
|
// Erstellen von root
|
||||||
|
Node *root = malloc(sizeof(Node));
|
||||||
|
|
||||||
|
root->data = 17;
|
||||||
|
|
||||||
|
// Anhaengen eines Knotens
|
||||||
|
Node *secondNode = malloc(sizeof(Node));
|
||||||
|
root->next = secondNode;
|
||||||
|
secondNode->data = 19;
|
||||||
|
}
|
||||||
|
\end{lstlisting}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
%------------------------------------------------
|
||||||
|
|
||||||
|
\begin{frame}[focus]
|
||||||
|
Danke für eure Aufmerksamkeit!
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
%----------------------------------------------------------------------------------------
|
||||||
|
% CLOSING/SUPPLEMENTARY SLIDES
|
||||||
|
%----------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
\appendix
|
||||||
|
|
||||||
|
\begin{frame}{Quellen}
|
||||||
|
\nocite{*} % Display all references regardless of if they were cited
|
||||||
|
\bibliography{sources}
|
||||||
|
\bibliographystyle{plain}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
\end{document}
|
18
sources.bib
Normal file
18
sources.bib
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
@misc{structtutorialspoint,
|
||||||
|
Title = {struct basics},
|
||||||
|
howpublished = {\url{https://www.tutorialspoint.com/cprogramming/c_structures.htm}},
|
||||||
|
note = {Aufgerufen: 2020-04}
|
||||||
|
}
|
||||||
|
|
||||||
|
@misc{structchowto,
|
||||||
|
Title = {struct basics},
|
||||||
|
howpublished = {\url{http://www.c-howto.de/tutorial/strukturierte-datentypen/strukturen/}},
|
||||||
|
note = {Aufgerufen: 2020-04}
|
||||||
|
}
|
||||||
|
|
||||||
|
@misc{pointertutorialspoint,
|
||||||
|
Title = {Pointer basics},
|
||||||
|
howpublished = {\url{https://www.tutorialspoint.com/cprogramming/c_pointers.htm}},
|
||||||
|
note = {Aufgerufen: 2020-04}
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user