CodeGym /Java-Blog /Random-DE /Coding Skills LevelUp, Teil 2. Wo Sie mehr über Algorithm...
John Squirrels
Level 41
San Francisco

Coding Skills LevelUp, Teil 2. Wo Sie mehr über Algorithmen erfahren können

Veröffentlicht in der Gruppe Random-DE
Fortsetzung unserer Artikelreihe über weitere programmbezogene Themen, die nicht Teil des CodeGym-Kurses sind, mit Links und Empfehlungen, wo Sie diese lernen können. Heute werden wir über Algorithmen sprechen. Coding Skills LevelUp, Teil 2. Wo man etwas über Algorithmen lernt – 1

Was sind Algorithmen?

Ein Algorithmus an sich ist nichts anderes als eine Schritt-für-Schritt-Anleitung zur Lösung eines Problems. Die meisten Algorithmen, die heutzutage in der Programmierung verwendet werden, wurden bereits entdeckt, getestet und bewährt. Algorithmen in Java sind statische Methoden, mit denen verschiedene Operationen an Sammlungen ausgeführt werden. Wenn Java-Programmierer Datenstrukturen zum Speichern und Organisieren von Daten verwenden, werden Algorithmen verwendet, um die Daten in diesen Strukturen zu manipulieren. Diese beiden Themen hängen also miteinander zusammen und es ist sehr wichtig zu verstehen, wie sie zusammenarbeiten, und kann Ihre Java-Codierung wesentlich effizienter machen. Algorithmen können auf jede Programmiersprache angewendet werden, und von erfahrenen Programmierern wird normalerweise erwartet, dass sie zumindest die Grundlagen dieses Themas kennen und wissen, wie man Algorithmen in Code in der von ihnen verwendeten Programmiersprache umwandelt.

Bücher über Algorithmen

  1. Datenstrukturen und Algorithmen leicht gemacht von Narasimha Karumanchi.

    Eines der besten Lehrbücher für Anfänger in Algorithmen (und Datenstrukturen). „Data Structures And Algorithms Made Easy: Data Structures and Algorithmic Puzzles“ ist ein Buch, das Lösungen für komplexe Datenstrukturen und Algorithmen bietet. Für jedes Problem gibt es mehrere Lösungen und das Buch ist in C/C++ codiert. Sie können dieses als Leitfaden zur Vorbereitung auf Vorstellungsgespräche, Prüfungen und Campusarbeiten verwenden.

  2. Grokking-Algorithmen von Aditya Bhargava.

    „Grokking Algorithms“ ist ein weiterer leicht verständlicher, vollständig illustrierter und in einem freundlichen Ton verfasster Leitfaden, der Ihnen beibringt, wie Sie gängige Algorithmen auf die praktischen Probleme anwenden, mit denen Sie als Programmierer täglich konfrontiert sind. Sie beginnen mit dem Sortieren und Suchen und während Sie Ihre Fähigkeiten im algorithmischen Denken ausbauen, werden Sie sich mit komplexeren Themen wie Datenkomprimierung und künstlicher Intelligenz befassen. Jedes Beispiel enthält Diagramme und vollständig kommentierte Codebeispiele in Python.

  3. Algorithmen freigeschaltet von Thomas Cormen.

    Ein Buch über die Grundlagen von Algorithmen für Anfänger und Programmierprofis, die ihr Fachwissen erweitern möchten, dieses Mal als College-Lehrbuch für MIT-Studenten geschrieben.

    „Die Leser erfahren, was Computeralgorithmen sind, wie man sie beschreibt und wie man sie bewertet. Sie werden einfache Möglichkeiten entdecken, in einem Computer nach Informationen zu suchen; Methoden zum Umordnen von Informationen in einem Computer in eine vorgeschriebene Reihenfolge („Sortieren“); wie man grundlegende Probleme löst, die in einem Computer mit einer mathematischen Struktur namens „Graph“ modelliert werden können (nützlich für die Modellierung von Straßennetzen, Abhängigkeiten zwischen Aufgaben und finanziellen Beziehungen); wie man Probleme löst, die Fragen zu Zeichenfolgen wie DNA-Strukturen stellen; die Grundprinzipien der Kryptographie; Grundlagen der Datenkomprimierung; und sogar, dass es einige Probleme gibt, die noch niemand in angemessener Zeit am Computer lösen kann“, sagt der Autor des Buches.

  4. Datenstrukturen und Algorithmen in Java von Robert Lafore.

    Und hier ist ein Lehrbuch, das sich speziell auf Java konzentriert. Neben klaren und einfachen Beispielprogrammen hat Robert Lafore dem Buch einen Workshop als kleines Demonstrationsprogramm hinzugefügt, das in einem Webbrowser ausführbar ist. Die Programme demonstrieren in grafischer Form, wie Datenstrukturen aussehen und wie sie funktionieren.

    Lösungsvorschläge zu den Programmierprojekten am Ende jedes Kapitels werden Lehrkräften anerkannter Bildungseinrichtungen zur Verfügung gestellt. Diese pädagogische Ergänzung zum Lehrbuch finden Sie unter pearson.com im Instructor Resource Center.

  5. Hallo Welt: Mensch sein im Zeitalter der Algorithmen von Hannah Fry.

    „Hello World: Being Human in the Age of Algorithms“ von Hannah Fry ist ein recht interessantes Buch, das Algorithmen aus einer etwas anderen Perspektive betrachtet. Der Autor beschreibt die wahren Möglichkeiten und Grenzen der Algorithmen, die bereits wichtige Entscheidungen im Gesundheitswesen, im Transportwesen, in der Kriminalität und im Handel automatisieren.

Online-Kurse zu Algorithmen

  1. Algorithmen, Teil I , Teil II von der Princeton University über Coursera.

    Ein ziemlich toller, völlig kostenloser Kurs von Princeton. Es umfasst die wesentlichen Informationen, die jeder ernsthafte Programmierer über Algorithmen und Datenstrukturen wissen muss, mit Schwerpunkt auf Anwendungen und wissenschaftlicher Leistungsanalyse von Java-Implementierungen. Teil I behandelt elementare Datenstrukturen, Sortier- und Suchalgorithmen. Teil II konzentriert sich auf Graph- und String-Verarbeitungsalgorithmen. Der Kurs bietet nach Abschluss kein Zertifikat an.

  2. Spezialisierungsprogramm für Datenstrukturen und Algorithmen von UC San Diego über Coursera.

    Ein weiteres renommiertes Kursprogramm zu Algorithmen und Datenstrukturen, das von der University of California, San Diego und der National Research Institute Higher School of Economics angeboten wird. Diese Spezialisierung ist eine Mischung aus Theorie und Praxis: Sie erlernen algorithmische Techniken zur Lösung verschiedener Rechenprobleme und implementieren etwa 100 algorithmische Codierungsprobleme in einer Programmiersprache Ihrer Wahl.

    „Kein anderer Online-Kurs in Algorithmen bietet Ihnen auch nur annähernd eine Fülle von Programmierherausforderungen, denen Sie bei Ihrem nächsten Vorstellungsgespräch begegnen könnten. Um Sie vorzubereiten, haben wir über 3000 Stunden in die Gestaltung unserer Herausforderungen als Alternative zu Multiple-Choice-Fragen investiert, die Sie normalerweise in MOOCs finden. Tut uns leid, wir glauben nicht an Multiple-Choice-Fragen, wenn es um das Lernen von Algorithmen geht ... oder irgendetwas anderes in der Informatik! Für jeden Algorithmus, den Sie entwickeln und implementieren, haben wir mehrere Tests entwickelt, um seine Korrektheit und Laufzeit zu überprüfen – Sie müssen Ihre Programme debuggen, ohne überhaupt zu wissen, was diese Tests sind! „Es mag schwierig klingen, aber wir glauben, dass es der einzige Weg ist, die Funktionsweise der Algorithmen wirklich zu verstehen und die Kunst des Programmierens zu beherrschen“, sagten die Autoren des Kurses.

  3. Spezialisierung auf Algorithmen von der Stanford University über Coursera.

    Und der dritte anerkannte kostenlose Algorithmenkurs einer renommierten Universität, diesmal der Stanford University. Dieser Kurs ist eine Einführung in Algorithmen für Lernende mit zumindest ein wenig Programmiererfahrung. Die Lernenden üben und beherrschen die Grundlagen von Algorithmen durch verschiedene Arten von Bewertungen. Jede Woche gibt es ein Multiple-Choice-Quiz, um Ihr Verständnis der wichtigsten Konzepte zu testen. Es gibt auch wöchentliche Programmieraufgaben, bei denen Sie einen der in der Vorlesung behandelten Algorithmen in einer Programmiersprache Ihrer Wahl implementieren. Jeder Kurs schließt mit einer Multiple-Choice-Abschlussprüfung ab.

YouTube-Kanäle und Playlists

  1. Algorithmen von Abdul Bari.

    Eine Liste kurzer Vorträge über Algorithmen von Abdul Bari, einem recht beliebten YouTuber, der seinen Zuschauern komplexe Themen auf einfachste und leicht verständliche Weise erklärt.

  2. Datenstrukturen und Algorithmen in Java zur Programmierung mit Mosh-Kanal.

    „Programming with Mosh“ ist ein beliebter Mainstream-YouTube-Kanal für Programmieranfänger. Es gibt jede Menge Tutorials zu Java und anderen Programmiersprachen, sie sind gut strukturiert und gut präsentiert, einschließlich des Tutorials zu Datenstrukturen und Algorithmen. Eine gute Möglichkeit, sich mit diesen Themen vertraut zu machen, wenn Sie keine Lust haben, Bücher zu lesen und Kurse zu bezahlen.

  3. MIT 6.006 Einführung in Algorithmen, Herbst 2011 von MIT OpenCourseWare

    MIT OpenCourseWare ist ein Kanal des Massachusetts Institute of Technology und bietet viele tolle kostenlose Videokurse, darunter auch den über Algorithmen. Der gesamte Kurs besteht aus 47 etwa einstündigen Sitzungen.

Kommentare
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION