Wie Man Besser In Javascript-Algorithmen Wird

Wie man Schreibalgorithmen lernt

Schreibalgorithmen können selbst für den erfahrensten Entwickler überwältigend sein. Viele von ihnen merken sich all die verschiedenen Herangehensweisen an ein bestimmtes Problem. Was wäre jedoch, wenn wir uns stattdessen ein geführtes Diagramm ansehen, das zeigt, wie wir ein Problem betrachten, damit wir es beheben können?

Dieser Artikel untersucht Algorithmen: was sind sie, wofür werden sie verwendet? und wie man lernt, Algorithmen zu schreiben.

Was ist ein Algorithmus?

Ein Algorithmus ist eine Reihe von Anweisungen. Wenn Sie einen Algorithmus mit einem Rezept vergleichen, können Sie sehen, wie ein Algorithmus aussieht:


Burgerrezept

Zubereitungszeit: 10 min

Eingabe:

Zutaten [] - eine Artikelliste, die den Namen des Artikels und die Menge erforderlichen enthält em>

Beispiel: [{Name: "Beef, 85/15", Menge: "2 lb" }, {Name : "Amerikanischer Käse, Menge:" 8 Scheiben "} usw.]

Wegbeschreibung [] - eine Liste von Zeichenfolgen, die die Schritte zum Fertigstellen und Präsentieren der Burger für hungrige Esser beschreiben

Beispiel: [„Das Fleisch wegwerfen und in 8 verschiedene Teile teilen ‚",“ Die Stücke zu einer Kugel rollen ‚",“ Jede Kugel zu einer Scheibe flachdrücken. Alle Scheiben sollten gleich groß sein, „usw.]

Ertrag: 8 Portionen


An Wenn der Algorithmus in Code geschrieben ist, wird davon ausgegangen, dass Sie mindestens eine Programmiersprache und ihre gängigen Methoden, ihre Datenstrukturen und ihre Verwendung kennen. Das Konzept ähnelt dem, bei dem ein Rezept davon ausgeht, dass Sie bestimmte Kochmethoden kennen und wie man Küchenzubehör verwendet.

Ein Algorithmus hat eine Eingabe und eine Ausgabe. Das Ergebnis (Lösung großer Probleme) ergibt sich aus der Lösung kleiner Probleme auf dem Weg dorthin.

Wozu dient ein Algorithmus?

Algorithmen werden überall eingesetzt, weil sie Probleme lösen. Computer- und Webentwicklung Sie werden beim Schreiben von Code verwendet, um dem Computer zu sagen, dass er etwas tun soll.

Wenn wir zum Beispiel eine Liste mit Namen hätten, könnten wir einen Sortieralgorithmus wie bubble sort zu Namen nach Vor- oder Nachnamen sortieren. Wir können auch einen binären Suchalgorithmus verwenden, um nach einem Namen in derselben Liste zu suchen. Dies sind nur einige der Standardalgorithmen, die Sie nutzen können.

Beachten Sie, dass Sie nach Abschluss eines Kurses nie wirklich fertig sind mit dem Schreiben von Algorithmen – Sie werden einfach besser Wie man lernt, einen Algorithmus zu schreiben: Schritt für Schritt

Hier sind die empfohlenen Schritt-für-Schritt-Tipps zum Erlernen des Schreibens von Algorithmen.

1. Lernen eine Programmiersprache
Java, JavaScript und Python sind alles beliebte Sprachen ‚Äã‚Ä ãwird verwendet, um Computeralgorithmen zu schreiben. Wählen Sie eine Sprache aus und lernen Sie sie in- und auswendig.

Integrieren Sie diese Konzepte in Ihr Verständnis der von Ihnen gewählten Sprache:

2. Datenstrukturen

Sie müssen Datenstrukturen gut beherrschen, um Ihre Algorithmen effizienter zu machen . Stellen Sie sicher, dass Sie wissen, wozu jede Datenstruktur dient und wie sie funktioniert.

3. Schreibalgorithmen: Der Problemlösungsprozess

Sie haben eine grundlegende Programmiersprache und genügend Datenstrukturen erlernt, um loszulegen. Glückwünsche ! Legen Sie los.

Fangen Sie klein an. Es ist wichtig, die vier Konzepte in George Pòlyas Abhandlung zur Fehlerbehebung zu verstehen (siehe Ressourcen . Auch hier wurden einige Schritte hinzugefügt, um den allgemeinen Ansatz zu analysieren:

George Pòlyas Leitfaden zur Lösung von Problemen

  1. Das Problem verstehen
  2. Was suchen Sie?
  3. Nehmen Sie das Problem und erklären Sie es mit Ihren eigenen Worten - versuchen Sie jemandem zu erklären, dass er technisch nicht gut ist.
  4. Geben Sie problematische Schlüsselwörter ein, um Ihnen bei der Erstellung eines grundlegenden Plans zu helfen - kein Code. Nur die Schritte, die erforderlich sind, um eine Antwort zu erhalten.
  5. li>
  6. Wiederholen Sie diesen Plan, um eine Codelösung zu erstellen.
    1. Wenn Sie keine Lösung finden können, gehen Sie zurück zu Schritt n. Stellen Sie sicher, dass Sie das Problem verstehen. Geben Sie die richtige Ausgabe zurück? Gibt es etwas, das Sie möglicherweise in der Eingabeaufforderung für die Codierung übersehen haben ?
  7. Was ist die Big-O-Bewertung Ihrer Lösung? Es gibt etwas, was Sie tun können, um die Lösung zu einem effizienteren Algorithmus in Bezug auf räumliche Komplexität oder Zeitkomplexität ?

4. Klein anfangen

Es beginnt mit einem einfachen Suchalgorithmus, der eine Zeichenfolge oder ein Array durchläuft, um einen Eintrag zu finden. Wenn der Eintrag nicht gefunden wird, wird false zurückgegeben. Wenn es gefunden wird, gibt es wahr zurück.

Entwickeln Sie diesen Anfängeralgorithmus und verwenden Sie andere Datenstrukturen, um zu sehen, wie andere möglicherweise einen anderen Prozess benötigen. Versuchen Sie, die Einträge zu sortieren, um effizientere Suchalgorithmen zu verwenden.

Verwenden Sie Websites, um Algorithmen zu üben, wie die im Abschnitt "Ressourcen" aufgeführten, um Ihre Fähigkeiten zu verbessern.

5. Wechseln Sie zu schwierigeren Algorithmen

strong>

Nach mehreren Iterationen können Sie zu schwierigeren Algorithmen wechseln. An diesem Punkt sollten Sie in der Lage sein, einige der Sortieralgorithmen neu zu erstellen, einschließlich Bubble Sort und Merge Sort. Binärrecherche sollte auch Teil Ihrer täglichen Programmiererfahrung sein.

Verwenden Sie weiterhin Websites, um Algorithmen zu üben und Ihre Fähigkeiten zu verbessern. Testen Sie sich mit etwas schwieriger gekennzeichneten Themen, um zu sehen, wie Sie abschneiden.

Die besten Kurse und Schulungen zu Algorithmen

Jeder lernt ein bisschen anders. Hier sind einige der besten algorithmischen Kurse und Schulungen, die es gibt. Einige sind kostenpflichtig, aber es gibt auch kostenlose. Diese Liste ist in keiner bestimmten Reihenfolge.

Online-Kurse zu Algorithmen

Hier sind einige der besten Online-Kurse zu Algorithmen:

Spezialisierung auf Algorithmen, Stanford University

Professor Tim Roughgarden von der Stanford University unterrichtet Graduiertenkurse in Algorithmen auf Coursera. Diese Kurse decken so ziemlich alles ab, was Sie für ein gutes Verständnis von Algorithmen benötigen, damit Sie in technischen Vorstellungsgesprächen gut abschneiden.

Algorithmen, IIT Bombay

Dieser Kurs ist Teil des IIT Bombay Fundamentals of Computer Science XSeries-Programms. Zu den hier behandelten Themen gehören Sortieren und Suchen, Zahlenalgorithmen, Zeichenfolgenalgorithmen, geometrische Algorithmen und grafische Algorithmen.

Kostenlose Kurse zu Algorithmen

Einführung in Algorithmen

Dies ist ein kostenloser Crashkurs über Algorithmen von Michael Littman von Udacity. Verwenden Sie die sechs Grade des Kevin-Bacon-Phänomens, um zu zeigen, wie Algorithmen funktionieren. Denken Sie an die sechs Grade der Trennung – es wurde gesagt, dass alle sechs oder weniger soziale Bindungen voneinander entfernt sind. Verwenden Sie das gleiche Konzept, aber mit den Filmen und Schauspielern von Kevin Bacon.

FreeCodeCamp, grundlegendes Algorithmusskript

Diese Reihe von FreeCodeCamp-Übungen wird Ihnen helfen, erfolgreich zu sein, indem Sie kleine Probleme lösen, bevor Sie sich den schwierigen zuwenden. Übungen zum Selbststudium verwenden die FreeCodeCamp-Lernplattform, um Ihren Code zu testen.

A Visuelle Einführung in Algorithmen < / a>

  • Lehre
  • Selbststudium, hauptsächlich basierend auf Text und Beispielen
  • Voraussetzungen: JavaScript, Python, C ++ oder Java
  • KOSTENLOS

In diesem kostenlosen Kurs wird anhand von visuellen und Video-Hilfsmitteln veranschaulicht, wie Algorithmen funktionieren. Die integrierten Codeumgebungen machen die Benutzererfahrung recht gut. Mögliche Lösungen sind enthalten.

Algorithmenbücher

Es gibt mehrere Bücher, die Ihnen auf Ihrem Weg helfen, ein besserer Algorithmusschreiber zu werden. Viele davon sind in einem örtlichen Buchladen und bei Amazon erhältlich.

`Grokking-Algorithmen`

` Ein illustrierter Leitfaden für Programmierer und Neugierige `

Von Aditya Bhargava

Cover Grokking Algorithmen

Grokking Algorithms ist eines der besten Bücher über gedruckte Algorithmen. Bhargava wurde von einem Künstler entwickelt, der zum Softwareentwickler wurde, und verfolgt einen illustrierten Ansatz, um Ihnen zu helfen, Algorithmen intuitiv zu verstehen oder zu verwenden. Die Übungen am Ende jedes Kapitels helfen, den Inhalt des Buches zu festigen.

„Algorithms in a Nutshell , 2. Aufl. `

`Ein praktischer Leitfaden`

Von George T. Heineman, Gary Inch, Stanley Selkow

 Algorithmen in Kürze Cover von

Dieses Buch verfolgt einen modellbasierten Designansatz Erfahren Sie, wann Sie abgebaute Algorithmen implementieren. Sie lernen, die Lösungen zu codieren und sie dann mithilfe fortschrittlicher Datenstrukturen zu verbessern. Die Lösungen sind in Ruby, Java, C++ und C, können aber leicht in Ihre bevorzugten Sprachen übersetzt werden.

`Algorithmen, 4. Aufl. `

Von Robert Sedgwick und Kevin Wayne

 Algorithms vierte Auflage Abdeckung

Die vierte Ausgabe der Algorithmen von Sedgewick und Wayne ist eine fantastische Einführung in die Welt der Algorithmen. Die Autoren überprüfen über 50 der wichtigsten Algorithmen, um Sie auf sich aufmerksam zu machen.Princeton-Pädagogen haben online einen entwickelt Kurs , der diesen Text gut ergänzt.

Ressource

Wie Man Besser In Javascript-Algorithmen Wird JavaScript: Questions

Shop

Best Python online courses for 2022

$

Best laptop for Fortnite

$

Best laptop for Excel

$

Best laptop for Solidworks

$

Best laptop for Roblox

$

Best computer for crypto mining

$

Best laptop for Sims 4

$

Best laptop for Zoom

$499

Latest questions

NUMPYNUMPY

psycopg2: insert multiple rows with one query

12 answers

NUMPYNUMPY

How to convert Nonetype to int or string?

12 answers

NUMPYNUMPY

How to specify multiple return types using type-hints

12 answers

NUMPYNUMPY

Javascript Error: IPython is not defined in JupyterLab

12 answers

Wiki

Python OpenCV | cv2.putText () method

numpy.arctan2 () in Python

Python | os.path.realpath () method

Python OpenCV | cv2.circle () method

Python OpenCV cv2.cvtColor () method

Python - Move item to the end of the list

time.perf_counter () function in Python

Check if one list is a subset of another in Python

Python os.path.join () method