AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Effiziente Algorithmen

Ein Thema von DieDolly · begonnen am 3. Dez 2019 · letzter Beitrag vom 4. Dez 2019
 
Benutzerbild von Gausi
Gausi

Registriert seit: 17. Jul 2005
908 Beiträge
 
Delphi 12 Athens
 
#7

AW: Effiziente Algorithmen

  Alt 3. Dez 2019, 14:42
Ich finde das Thema "Sortieren" eigentlich ganz gut dafür. Das ist nicht trivial, aber richtig aufgezogen auch interessant - zur Anschauung kann man ja ein Kartenspiel mitnehmen.

Ich würde allerdings nicht Bubblesort und/oder Quicksort nehmen. Als Beispiel zum Einstieg für einen nicht besonders effizienten Sortieralgorithmus würde ich mit "Sortieren durch Auswahl" anfangen. Also "Suche das kleinste Element, und packe es nach vorne. Dann im Rest das kleinste, und packe es an die zweite Stelle." usw.

Als Spaß-Einstieg ggf. noch Bogosort vorweg: "Mische und schaue nach, ob die Reihenfolge stimmt. Wenn nicht, probiere es nochmal."

Und dann würde ich eine Mergesort-Variante nehmen. Die ist auch in O(n*log(n)), und zwar auch im Worst-Case (das ist bei Quicksort nämlich nicht so!).
Der funktioniert so, dass ich schaue, welche Teilfolgen bereits passend sortiert sind. Je zwei aufeinanderfolgende sortierte Teilfolgen werden dann zu einer sortierten Teilfolge "gemischt", in dem jeweils die kleinere Zahl in die neue Folge eingefügt wird. (Kleiner Nachteil dabei: Benötigt mehr Platz).

Suchverfahren gehen natürlich auch. Hier würde ich zusätzlich zur linearen und binären Suche noch die Interpolationssuche hinzunehmen.

Als Bonus könnte man dann noch am Ende die Frage in den Raum werfen, ob es für "jedes Problem" einen "effizienten Algorithmus" gibt, oder ob es zumindest für jedes Problem, bei dem man die richtige Lösung schnell überprüfen kann, einen effizienten Algorithmus zur Findung der Lösung gibt.

Kann man auch als Abstimmung machen Ja/Nein/Weiß-Ich-Nicht. Und die, die sich dann bei "Weiß-Nicht" gemeldet haben, bekommen den Bonuspunkt, denn das weiß noch niemand. Stichpunkt: P-NP-Problem. Aber da ist dann die Definition von "effizient" eine etwas andere (und Bubblesort wäre dann auch in diesem Sinne effizient).

Und falls es doch Quicksort sein soll: Den kann man auch vortanzen.

https://www.youtube.com/watch?v=ywWBy6J5gz8
Being smart will count for nothing if you don't make the world better. You have to use your smarts to count for something, to serve life, not death.

Geändert von Gausi ( 3. Dez 2019 um 14:48 Uhr)
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:37 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz