#28 O(1), O(log n), O(n^2) - Ist die Komplexität von Algorithmen im Entwickler-Alltag relevant?
Engineering Kiosk - Ein Podcast von Wolfgang Gassler, Andy Grunwald - Dienstags
Kategorien:
Beim Programmieren ist alles ein Algorithmus. Irgendwie zumindest. Doch wie misst man die Zeitkomplexität?Das ganze nennt sich Big-O-Notation, oder zu deutsch "Bachmann-Landau-Notation". Eigentlich ein recht trockenes Thema, doch auch irgendwie relevant in der heutigen Zeit von verteilten Systemen und großen Datenmengen. Doch was ist die Big-O-Notation? Was sagt sie aus? Wo kommt diese in der Praxis vor? Und inwieweit hat das ganze noch eine Relevanz in Zeiten von Cloud Computing und fast unbegrenzten Hardware-Ressourcen? Darum geht es in dieser Episode.Bonus: Wie Andy und Wolfgang in deutscher Grammatik belehrt werden, ob es OK ist in 1on1s zu fluchen und das Hash-Kollisionen mit der ganzen Sache zu tun haben.Feedback an [email protected] oder via Twitter an https://twitter.com/EngKioskLinksPocket Casts: https://pocketcasts.com/Learn Redis the hard way (in production): https://tech.trivago.com/post/learn-redis-the-hard-way/Redis KEYS Befehl: https://redis.io/commands/keys/Redis HSET Befehl: https://redis.io/commands/hset/kSQL: https://www.confluent.io/de-de/blog/ksql-streaming-sql-for-apache-kafka/Engineering Kiosk auf LinkedIn: https://www.linkedin.com/company/engineering-kiosk/Sprungmarken(00:00:00) Intro(00:00:49) Intro: Feedback zur Episode #26 - Deutschland spricht schlecht Englisch(00:03:55) Intro: Feedback zur Grammatik - Der, die oder das Kommentar(00:06:05) Wer hört denn so alles das Engineering Kiosk?(00:07:09) Podcast-Player: Pocket Casts(00:08:32) Was sind die Sachen, die oft sinnvoll sind, du aber doch vergessen hast?(00:10:34) Das heutige Thema: Big-O Notation / Bachmann-Landau Notation (Zeitkomplexität von Algorithmen)(00:13:33) Warum ist die Big-O Notation / Bachmann-Landau Notation relevant(00:15:24) Wo war es das letzte mal wo dir die Big-O Notation vorgekommen ist(00:16:05) Was ist die Big-O Notation / Bachmann-Landau Notation?(00:20:59) Geben wir den best, average oder worst-case der Big-O Notation / Bachmann-Landau Notation an?(00:25:15) Konstanten können zur Vereinfachung einfach weggelassen werden(00:27:00) Big-O Notation bei redis: Die Story wie Andy damit in Berührung kam(00:31:16) Zeitkomplexität vs. Space-Complexity / Raumkomplexität: Zeit vs. Memory(00:32:58) Gibt es was besseres als O(1)?(00:34:26) Ist das setzen eines Keys in einer Hashmap immer O(1)?(00:40:03) Inwieweit kann man die Big-O Notation / Bachmann-Landau Notation auf Datenbanken mappen?(00:42:07) Wie relevant ist die Optimierung der Big-O Notation in Zeiten von Cloud und schnellen Servern eigentlich noch?(00:45:52) Batch-Processing vs. Streaming und die Optimierung von Algorithmen(00:48:49) Optimierungen von Algorithmen in JavaScript / auf Client-Seite(00:52:06) Optimierungen können auch schlecht sein bzw. schlecht aussehen(00:53:09) Outro mit FlachwitzenHostsWolfgang Gassler (https://twitter.com/schafele)Andy Grunwald (https://twitter.com/andygrunwald)Engineering Kiosk Podcast: Anfragen an [email protected] oder via Twitter an https://twitter.com/EngKiosk