Flussdiagramm
Tiktaktoe
- 2 Spieler abwechselnd
- 3x3 Spielfeld
- Ergebnis oder Unentschieden Array Wertebereich â 0,1,2 0 â leeres Feld 1 â x am Feld 2 â o am Feld
0 | 0 | 0 |
---|---|---|
0 | 0 | 0 |
0 | 0 | 0 |
Leer |
1 | 1 | 1 |
---|---|---|
1 | 1 | 1 |
1 | 1 | 1 |
x ĂŒberall |
2 | 2 | 2 |
---|---|---|
2 | 2 | 2 |
2 | 2 | 2 |
o ĂŒberall |
Sortieren
Unter einem Sortierverfahren versteht man in der Informatik einen Algorithmus, der dazu dient, ein Tupel (i. Allg. ein Array) zu sortieren. Voraussetzung ist, dass auf der Menge der Elemente eine strenge schwache Ordnung definiert ist (âkleiner-gleichâ), z. B. die lexikographische Ordnung von Zeichenketten oder die numerische Ordnung von Zahlen.
Es gibt verschiedene Sortierverfahren, die unterschiedlich effizient arbeiten bezĂŒglich der ZeitkomplexitĂ€t (Anzahl der nötigen Operationen) sowie der PlatzkomplexitĂ€t (zusĂ€tzlich zum Eingabe-Array benötigter weiterer Speicherplatz). Die KomplexitĂ€t eines Algorithmus wird ĂŒblicherweise in der Landau-Notation dargestellt (s. u. AusdrĂŒcke wie Î(ïżœâ
logâĄ(ïżœ)) (Theta) oder stilisiertes âOhâ, Omega groĂ, Omega klein). Die ZeitkomplexitĂ€t hĂ€ngt bei einigen Sortierverfahren von der anfĂ€nglichen Anordnung der Werte im Array ab, man unterscheidet dann zwischen Best Case (bei gĂŒnstigster âVorsortierungâ), Average Case (Normalfall) und Worst Case (schlechtester Fall ~ die Werte sind âmaximal ungĂŒnstig vorgeordnetâ). HĂ€ufig sind zusĂ€tzliche Faktoren zu beachten, die Einfluss auf Zeit- oder PlatzkomplexitĂ€t haben, zum Beispiel langsamer Zugriff auf extern liegende Daten, begrenzte GröĂe des Arbeitsspeichers oder Ă€hnliches.
Bubble Sort 27 4 8 30 31 4 27 8 20 31 4 8 27 20 31 4 8 20 27 31 max suchen 27 4 8 20 31 27 4 8 20 31 20 4 8 27 31 8 4 20 27 31 4 8 20 27 31
Bubble Sort
wechselt immer ĂŒberlappend â nach dem ersten mal die höchste zahl ganz rechts zweiter Durchgang 2 höchste 2 rechts hinterste nummer werden dann ausgelassen weil ja nach jedem druchgang das höchste
zb 2 8 5 3 9 4 1 â 2 < 8 â kein tausch â 8 > 5 tausch etc 2 5 3 8 4 1 |9 2 3 5 4 1 |8 9 2 3 4 1 |5 8 9 2 3 1 |4 5 8 9 2 1 |3 4 5 8 9 1 |2 3 4 5 8 9
Merge Sort
halbiert immer array dann fĂŒgt zsm aber sortiert davor