University of California San Diego

Datenstrukturen

Neil Rhodes
Daniel M Kane
Michael Levin

Dozenten: Neil Rhodes

284.637 bereits angemeldet

Bei Coursera Plus enthalten

Verschaffen Sie sich einen Einblick in ein Thema und lernen Sie die Grundlagen.
4.6

(5,470 Bewertungen)

Stufe Mittel

Empfohlene Erfahrung

Flexibler Zeitplan
Ca. 22 Stunden
In Ihrem eigenen Lerntempo lernen
93%
Den meisten Lernenden gefiel dieser Kurs
Verschaffen Sie sich einen Einblick in ein Thema und lernen Sie die Grundlagen.
4.6

(5,470 Bewertungen)

Stufe Mittel

Empfohlene Erfahrung

Flexibler Zeitplan
Ca. 22 Stunden
In Ihrem eigenen Lerntempo lernen
93%
Den meisten Lernenden gefiel dieser Kurs

Kompetenzen, die Sie erwerben

  • Kategorie: Prioritäts-Warteschlange
  • Kategorie: Binärer Suchbaum
  • Kategorie: Hash-Tabelle
  • Kategorie: Liste
  • Kategorie: Stack (Abstrakter Datentyp)

Wichtige Details

Zertifikat zur Vorlage

Zu Ihrem LinkedIn-Profil hinzufügen

Bewertungen

9 Aufgaben

Unterrichtet in Englisch

Erfahren Sie, wie Mitarbeiter führender Unternehmen gefragte Kompetenzen erwerben.

Platzhalter

Erweitern Sie Ihre Fachkenntnisse

Dieser Kurs ist Teil der Spezialisierung Spezialisierung Datenstrukturen und Algorithmen
Wenn Sie sich für diesen Kurs anmelden, werden Sie auch für diese Spezialisierung angemeldet.
  • Lernen Sie neue Konzepte von Branchenexperten
  • Gewinnen Sie ein Grundverständnis bestimmter Themen oder Tools
  • Erwerben Sie berufsrelevante Kompetenzen durch praktische Projekte
  • Erwerben Sie ein Berufszertifikat zur Vorlage
Platzhalter
Platzhalter

Erwerben Sie ein Karrierezertifikat.

Fügen Sie diese Qualifikation zur Ihrem LinkedIn-Profil oder Ihrem Lebenslauf hinzu.

Teilen Sie es in den sozialen Medien und in Ihrer Leistungsbeurteilung.

Platzhalter

In diesem Kurs gibt es 6 Module

In diesem Modul lernen Sie die grundlegenden Datenstrukturen kennen, die im weiteren Verlauf dieses Kurses verwendet werden. Wir beginnen dieses Modul mit einer detaillierten Betrachtung der grundlegenden Bausteine: Arrays und verknüpfte Listen. Von dort aus bauen wir zwei wichtige Datenstrukturen auf: Stapel und Warteschlangen. Als nächstes befassen wir uns mit Bäumen: Beispiele für ihre Verwendung in der Informatik, ihre Implementierung und die verschiedenen Möglichkeiten, sie zu durchlaufen. Wenn Sie dieses Modul abgeschlossen haben, werden Sie in der Lage sein, jede dieser Datenstrukturen zu implementieren und ein solides Verständnis für die Kosten der Operationen sowie für die Kompromisse bei der Verwendung jeder Datenstruktur haben.

Das ist alles enthalten

7 Videos7 Lektüren1 Aufgabe1 Programmieraufgabe

In diesem Modul besprechen wir Dynamische Arrays: eine Möglichkeit, Arrays zu verwenden, wenn im Voraus nicht bekannt ist, wie viele Elemente benötigt werden. Hier besprechen wir auch die amortisierte Analyse: eine Methode zur Bestimmung der amortisierten Kosten einer Operation über eine Folge von Operationen. Die amortisierte Analyse wird sehr häufig zur Analyse der Leistung von Algorithmen verwendet, wenn die direkte Analyse unbefriedigende Ergebnisse liefert, aber die amortisierte Analyse hilft zu zeigen, dass der Algorithmus tatsächlich effizient ist. Sie wird sowohl für die Analyse dynamischer Arrays als auch am Ende dieses Kurses für die Analyse von Splay-Bäumen verwendet.

Das ist alles enthalten

5 Videos1 Lektüre1 Aufgabe

Wir beginnen dieses Modul mit der Betrachtung von Prioritätswarteschlangen, die zur effizienten Planung von Aufträgen verwendet werden, entweder im Kontext eines Computerbetriebssystems oder im wirklichen Leben, zum Sortieren großer Dateien, was der wichtigste Baustein für jeden Big Data-Verarbeitungsalgorithmus ist, und zur effizienten Berechnung kürzester Pfade in Graphen, ein Thema, das wir in unserem nächsten Kurs behandeln werden. Aus diesem Grund gibt es für Prioritätswarteschlangen in vielen Programmiersprachen, darunter C++, Java und Python, integrierte Implementierungen. Wir werden sehen, dass diese Implementierungen auf der schönen Idee beruhen, einen kompletten Binärbaum in einem Array zu speichern, das es ermöglicht, alle Prioritätswarteschlangenmethoden in nur wenigen Zeilen Code zu implementieren. Anschließend werden wir zur Datenstruktur der disjunkten Mengen übergehen, die z.B. bei der dynamischen Graphenkonnektivität und der Bildverarbeitung verwendet wird. Wir werden wieder sehen, wie einfache und natürliche Ideen zu einer Implementierung führen, die sowohl einfach zu programmieren als auch sehr effizient ist. Nach Abschluss dieses Moduls werden Sie in der Lage sein, diese beiden Datenstrukturen von Grund auf effizient zu implementieren.

Das ist alles enthalten

15 Videos6 Lektüren3 Aufgaben1 Programmieraufgabe1 Plug-in

In diesem Modul lernen Sie eine sehr leistungsfähige und weit verbreitete Technik namens Hashing kennen. Zu seinen Anwendungen gehören die Implementierung von Programmiersprachen, Dateisystemen, Mustersuche, verteilte Schlüssel-Wert-Speicherung und vieles mehr. Sie lernen, wie man Datenstrukturen zum Speichern und Ändern von Objektmengen und Zuordnungen von einem Objekttyp zu einem anderen implementiert. Sie werden sehen, dass naive Implementierungen entweder riesige Mengen an Speicher verbrauchen oder langsam sind. Dann werden Sie lernen, wie man Hash-Tabellen implementiert, die linearen Speicher verbrauchen und im Durchschnitt in O(1) arbeiten! Schließlich werden Sie lernen, wie Hash-Funktionen in modernen verteilten Systemen eingesetzt werden und wie sie zur Optimierung der Speicherung von Diensten wie Dropbox, Google Drive und Yandex Disk verwendet werden!

Das ist alles enthalten

20 Videos4 Lektüren2 Aufgaben1 Programmieraufgabe

In diesem Modul befassen wir uns mit binären Suchbäumen, einer Datenstruktur für die Suche in sich dynamisch verändernden geordneten Mengen. Sie werden viele der Schwierigkeiten bei der Bewältigung dieser Aufgabe kennenlernen und erfahren, wie wir sie überwinden können. Dazu müssen Sie die Grundstruktur von binären Suchbäumen kennen, wissen, wie man einfügt und löscht, ohne diese Struktur zu zerstören, und wie man sicherstellt, dass der Baum ausgeglichen bleibt.

Das ist alles enthalten

7 Videos2 Lektüren1 Aufgabe

In diesem Modul setzen wir das Studium der binären Suchbäume fort. Wir studieren ein paar nicht-triviale Anwendungen. Anschließend untersuchen wir die neue Art von ausgewogenen Suchbäumen - Splay Trees. Sie passen sich dynamisch an die Abfragen an und sind in vielerlei Hinsicht optimal.

Das ist alles enthalten

4 Videos2 Lektüren1 Aufgabe1 Programmieraufgabe

Dozenten

Lehrkraftbewertungen
4.5 (702 Bewertungen)
Neil Rhodes
University of California San Diego
7 Kurse704.570 Lernende
Daniel M Kane
University of California San Diego
5 Kurse686.950 Lernende
Michael Levin
University of California San Diego
7 Kurse725.261 Lernende

von

Empfohlen, wenn Sie sich für Algorithmen interessieren

Warum entscheiden sich Menschen für Coursera für ihre Karriere?

Felipe M.
Lernender seit 2018
„Es ist eine großartige Erfahrung, in meinem eigenen Tempo zu lernen. Ich kann lernen, wenn ich Zeit und Nerven dazu habe.“
Jennifer J.
Lernender seit 2020
„Bei einem spannenden neuen Projekt konnte ich die neuen Kenntnisse und Kompetenzen aus den Kursen direkt bei der Arbeit anwenden.“
Larry W.
Lernender seit 2021
„Wenn mir Kurse zu Themen fehlen, die meine Universität nicht anbietet, ist Coursera mit die beste Alternative.“
Chaitanya A.
„Man lernt nicht nur, um bei der Arbeit besser zu werden. Es geht noch um viel mehr. Bei Coursera kann ich ohne Grenzen lernen.“

Bewertungen von Lernenden

Zeigt 3 von 5470

4.6

5.470 Bewertungen

  • 5 stars

    73,55 %

  • 4 stars

    20,70 %

  • 3 stars

    3,59 %

  • 2 stars

    0,73 %

  • 1 star

    1,40 %

AS
5

Geprüft am 22. Nov. 2019

AD
5

Geprüft am 7. Feb. 2020

YL
4

Geprüft am 26. Sep. 2020

Platzhalter

Neue Karrieremöglichkeiten mit Coursera Plus

Unbegrenzter Zugang zu über 7.000 erstklassigen Kursen, praktischen Projekten und Zertifikatsprogrammen, die Sie auf den Beruf vorbereiten – alles in Ihrem Abonnement enthalten

Bringen Sie Ihre Karriere mit einem Online-Abschluss voran.

Erwerben Sie einen Abschluss von erstklassigen Universitäten – 100 % online

Schließen Sie sich mehr als 3.400 Unternehmen in aller Welt an, die sich für Coursera for Business entschieden haben.

Schulen Sie Ihre Mitarbeiter*innen, um sich in der digitalen Wirtschaft zu behaupten.

Häufig gestellte Fragen