Engineering Kiosk

#28 O(1), O(log n), O(n^2) - Ist die Komplexität von Algorithmen im Entwickler-Alltag relevant?


Listen Later

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/EngKiosk

Unsere aktuellen Werbepartner findest du auf https://engineeringkiosk.dev/partners

 

Links
  • Pocket 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 Flachwitzen

Hosts
  • Wolfgang 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

...more
View all episodesView all episodes
Download on the App Store

Engineering KioskBy Wolfgang Gassler, Andy Grunwald