Skip to content
Snippets Groups Projects
Commit 1e54b385 authored by Peter Gerwinski's avatar Peter Gerwinski
Browse files

Vorbereitung 30.3.2023

parent b237419a
Branches
No related tags found
No related merge requests found
Showing
with 266 additions and 3 deletions
No preview for this file type
% ad-20230322.pdf - Lecture Slides on Algorithms and Data Structures in C/C++ % ad-20230323.pdf - Lecture Slides on Algorithms and Data Structures in C/C++
% Copyright (C) 2018, 2019, 2020, 2021, 2022, 2023 Peter Gerwinski % Copyright (C) 2018, 2019, 2020, 2021, 2022, 2023 Peter Gerwinski
% %
% This document is free software: you can redistribute it and/or % This document is free software: you can redistribute it and/or
...@@ -20,7 +20,7 @@ ...@@ -20,7 +20,7 @@
% Attribution-ShareAlike 3.0 Unported License along with this % Attribution-ShareAlike 3.0 Unported License along with this
% document. If not, see <http://creativecommons.org/licenses/>. % document. If not, see <http://creativecommons.org/licenses/>.
% README: Einführung % README: Einführung in C++
\documentclass[10pt,t]{beamer} \documentclass[10pt,t]{beamer}
...@@ -37,7 +37,7 @@ ...@@ -37,7 +37,7 @@
\title{Algorithmen und Datenstrukturen in C/C++} \title{Algorithmen und Datenstrukturen in C/C++}
\author{Prof.\ Dr.\ rer.\ nat.\ Peter Gerwinski} \author{Prof.\ Dr.\ rer.\ nat.\ Peter Gerwinski}
\date{22.\ März 2023} \date{23.\ März 2023}
\begin{document} \begin{document}
...@@ -1034,6 +1034,8 @@ ...@@ -1034,6 +1034,8 @@
\end{lstlisting} \end{lstlisting}
\end{frame} \end{frame}
\iffalse
\subsection{Objekte} \subsection{Objekte}
\begin{frame}[fragile] \begin{frame}[fragile]
...@@ -1085,4 +1087,6 @@ ...@@ -1085,4 +1087,6 @@
\end{itemize} \end{itemize}
\end{frame} \end{frame}
\fi
\end{document} \end{document}
Lösung zur Übungsaufgabe, 23.03.2023, 15:17:55
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
(b) Trivial.
(a) Wir setzen (b) als gelöst voraus und bringen die doppelt verkettette Liste
in die umgekehrte Reihenfolge (lists-19.c).
(c) O(n)
(d) O(1)
#include <stdio.h>
const int n = 5;
int prime[n] = { 2, 3, 5, 7, 11 };
int main (void)
{
for (int i = 0; i < 5; i++)
printf ("%d\n", prime[i]);
return 0;
}
#include <stdio.h>
int main (void)
{
const int n = 5;
int prime[n] = { 2, 3, 5, 7, 11 };
for (int i = 0; i < 5; i++)
printf ("%d\n", prime[i]);
return 0;
}
#include <stdio.h>
int main (void)
{
const int n = 5;
int prime[n];
prime[0] = 2;
prime[1] = 3;
prime[2] = 5;
prime[3] = 7;
prime[4] = 11;
for (int i = 0; i < 5; i++)
printf ("%d\n", prime[i]);
return 0;
}
#include <stdio.h>
const int n = 5;
int prime[n];
int main (void)
{
prime[0] = 2;
prime[1] = 3;
prime[2] = 5;
prime[3] = 7;
prime[4] = 11;
for (int i = 0; i < 5; i++)
printf ("%d\n", prime[i]);
return 0;
}
#include <stdio.h>
#define n 5
int prime[n];
int main (void)
{
prime[0] = 2;
prime[1] = 3;
prime[2] = 5;
prime[3] = 7;
prime[4] = 11;
for (int i = 0; i < 5; i++)
printf ("%d\n", prime[i]);
return 0;
}
#include <stdio.h>
const int n = 6;
int prime[n] = { 2, 3, 5, 7, 11, 13 };
int main (void)
{
for (int i = 0; i < n; i++)
printf ("%d\n", prime[i]);
return 0;
}
#include <stdio.h>
int fak (int n)
{
int f = 1;
for (int i = 2; i <= n; i++)
f *= i;
return f;
}
const int n = fak (3);
int prime[n] = { 2, 3, 5, 7, 11, 13 };
int main (void)
{
for (int i = 0; i < n; i++)
printf ("%d\n", prime[i]);
return 0;
}
#include <stdio.h>
constexpr int fak (int n)
{
int f = 1;
for (int i = 2; i <= n; i++)
f *= i;
return f;
}
const int n = fak (3);
int prime[n] = { 2, 3, 5, 7, 11, 13 };
int main (void)
{
for (int i = 0; i < n; i++)
printf ("%d\n", prime[i]);
return 0;
}
#include <stdio.h>
constexpr int fak (int n)
{
if (n <= 1)
return 1;
else
return n * fak (n - 1);
}
const int n = fak (3);
int prime[n] = { 2, 3, 5, 7, 11, 13 };
int main (void)
{
for (int i = 0; i < n; i++)
printf ("%d\n", prime[i]);
return 0;
}
#include <stdio.h>
constexpr int fak (int n)
{
return n <= 1 ? 1 : n * fak (n - 1);
}
const int n = fak (3);
int prime[n] = { 2, 3, 5, 7, 11, 13 };
int main (void)
{
for (int i = 0; i < n; i++)
printf ("%d\n", prime[i]);
return 0;
}
#include <stdio.h>
int eins = 1;
constexpr int fak (int n)
{
return n <= eins ? eins : n * fak (n - 1);
}
const int n = fak (3);
int prime[n] = { 2, 3, 5, 7, 11, 13 };
int main (void)
{
for (int i = 0; i < n; i++)
printf ("%d\n", prime[i]);
return 0;
}
#include <stdio.h>
#include <stdlib.h>
int main (void)
{
int *p = malloc (1);
*p = 42;
printf ("The answer is: %d\n", *p);
free (p);
return 0;
}
#include <stdio.h>
#include <stdlib.h>
int main (void)
{
int *p = malloc (sizeof (int));
*p = 42;
printf ("The answer is: %d\n", *p);
free (p);
return 0;
}
#include <stdio.h>
#include <stdlib.h>
int main (void)
{
int *p = new int;
*p = 42;
printf ("The answer is: %d\n", *p);
delete p;
return 0;
}
#include <stdio.h>
#include <stdlib.h>
int main (void)
{
int *p = new sizeof (int);
*p = 42;
printf ("The answer is: %d\n", *p);
delete p;
return 0;
}
#include <stdio.h>
void print (const char *s)
{
printf ("%s", s);
}
void print (int i)
{
printf ("%d", i);
}
int main ()
{
print ("Hello, world!\n");
print (42);
}
#include <stdio.h>
void print (const char *s = "\n")
{
printf ("%s", s);
}
void print (int i)
{
printf ("%d", i);
}
int main ()
{
print ("Hello, world!\n");
print (42);
print ();
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment