Die 10 beliebtesten Coding Challenge-Websites [Aktualisiert für 2020]

Eine großartige Möglichkeit, Ihre Fähigkeiten beim Erlernen des Codierens zu verbessern, besteht darin, Codierungsprobleme zu lösen. Das Lösen verschiedener Arten von Herausforderungen und Rätseln kann Ihnen helfen, ein besserer Problemlöser zu werden, die Feinheiten einer Programmiersprache zu lernen, sich auf Vorstellungsgespräche vorzubereiten, neue Algorithmen zu lernen und vieles mehr.

Im Folgenden finden Sie eine Liste einiger beliebter Websites für Codierungsherausforderungen mit einer kurzen Beschreibung der einzelnen Websites.

1. TopCoder

TopCoder ist eine der ursprünglichen Plattformen für wettbewerbsfähige Online-Programmierung. Es enthält eine Liste algorithmischer Herausforderungen aus der Vergangenheit, die Sie mithilfe des Code-Editors direkt online selbst erledigen können. Die beliebten Einzelrundenspiele werden einige Male im Monat zu einem bestimmten Zeitpunkt angeboten, an dem Sie gegen andere antreten, um Herausforderungen am schnellsten mit der besten Punktzahl zu lösen.

Die bestplatzierten Benutzer von TopCoder sind sehr gute Programmierer und nehmen regelmäßig an Programmierwettbewerben teil. Der bestplatzierte Benutzer unterhält wöchentlich einen eigenen Blog mit dem Titel Algorithmen von Petr Mitrichev, in dem er über Codierungswettbewerbe, Algorithmen, Mathematik und mehr schreibt.

2. Coderbyte

Coderbyte bietet mehr als 200 Codierungsprobleme, die Sie direkt online in einer von 10 Programmiersprachen lösen können (siehe dieses Beispiel). Die Herausforderungen reichen von einfach (Finden des größten Wortes in einer Zeichenfolge) bis schwer (Drucken der maximalen Kardinalitätsübereinstimmung eines Diagramms).

Sie bieten auch eine Sammlung von Algorithmus-Tutorials, Einführungsvideos und Vorbereitungskursen für Interviews. Im Gegensatz zu HackerRank und anderen ähnlichen Websites können Sie die Lösungen anzeigen, die andere Benutzer für jede Herausforderung bereitstellen, abgesehen von den offiziellen Lösungen von Coderbyte.

3. Projekt Euler

Das Projekt Euler bietet eine große Sammlung von Herausforderungen im Bereich der Informatik und Mathematik. Die Herausforderungen bestehen normalerweise darin, ein kleines Programm zu schreiben, um die Lösung für eine clevere mathematische Formel oder Gleichung zu finden, z. B. die Summe der Ziffern aller Zahlen vor jeder Zahl in einer Reihe zu finden.

Sie können nicht direkt in einem Editor auf der Website codieren. Sie müssen daher eine Lösung auf Ihrem eigenen Computer schreiben und diese dann auf der Website bereitstellen.

4. HackerRank

HackerRank bietet Herausforderungen für verschiedene Bereiche wie Algorithmen, Mathematik, SQL, funktionale Programmierung, KI und mehr. Sie können alle Herausforderungen direkt online lösen (siehe dieses Beispiel). Sie bieten eine Diskussion und eine Rangliste für jede Herausforderung. Die meisten Herausforderungen werden mit einem Editorial geliefert, in dem mehr über die Herausforderung und ihre Vorgehensweise bei der Erarbeitung einer Lösung erläutert wird. Abgesehen vom Editorial können Sie derzeit die Lösungen anderer Benutzer auf HackerRank nicht anzeigen.

HackerRank bietet Benutzern auch die Möglichkeit, Bewerbungen einzureichen und sich auf Jobs zu bewerben, indem von Unternehmen gesponserte Codierungsprobleme gelöst werden.

5. CodeChef

CodeChef ist eine in Indien ansässige Website für wettbewerbsfähige Programme, die Hunderte von Herausforderungen bietet. Sie können Code in den Online-Editor schreiben und eine Sammlung von Herausforderungen anzeigen, die je nach Kenntnisstand in verschiedene Kategorien unterteilt sind (siehe dieses Beispiel). Sie haben eine große Community von Programmierern, die zu den Foren beitragen, Tutorials schreiben und an den Codierungswettbewerben von CodeChef teilnehmen.

6. Exercism.io

Exercism ist eine Website für Codierungsherausforderungen, die mehr als 3100 Herausforderungen in 52 verschiedenen Programmiersprachen bietet. Nachdem Sie eine Sprache ausgewählt haben, die Sie beherrschen möchten, bewältigen Sie die Codierungsprobleme direkt auf Ihrem Computer (Exercism verfügt über eine eigene Befehlszeilenschnittstelle, die Sie von GitHub herunterladen können).

Es unterscheidet sich jedoch ein wenig von anderen Herausforderungswebsites, da Sie nach Abschluss jeder Herausforderung mit einem Mentor zusammenarbeiten. Der Mentor überprüft Ihre Antworten online und hilft Ihnen, sie bei Bedarf zu verbessern. Sobald Ihre Antworten genehmigt und übermittelt wurden, schalten Sie weitere Herausforderungen frei.

7. Codewars

Codewars bietet eine große Sammlung von Codierungsherausforderungen, die von der eigenen Community eingereicht und bearbeitet werden. Sie können die Herausforderungen direkt online in ihrem Editor in einer von mehreren Sprachen lösen. Sie können eine Diskussion für jede Herausforderung sowie Benutzerlösungen anzeigen.

8. LeetCode

LeetCode ist ein beliebter Online-Richter, der eine Liste mit mehr als 190 Herausforderungen bietet, mit denen Sie sich auf technische Vorstellungsgespräche vorbereiten können. Sie können die Herausforderungen direkt online in einer von 9 Programmiersprachen lösen. Sie können die Lösungen anderer Benutzer nicht anzeigen, erhalten jedoch Statistiken für Ihre eigenen Lösungen, z. B. wie schnell Ihr Code im Vergleich zum Code anderer Benutzer ausgeführt wurde.

Sie haben auch einen Abschnitt mit Scheininterviews, der speziell für die Vorbereitung von Vorstellungsgesprächen vorgesehen ist, sie veranstalten ihre eigenen Codierungswettbewerbe und sie haben einen Abschnitt mit Artikeln, die Ihnen helfen, bestimmte Probleme besser zu verstehen.

9. SPOJ

Sphere Online Judge (SPOJ) ist ein Online-Richter, der über 20.000 Codierungsprobleme bietet. Sie können Ihren Code in einem Online-Editor einreichen. SPOJ veranstaltet auch eigene Wettbewerbe und verfügt über einen Bereich, in dem Benutzer Codierungsprobleme diskutieren können. Sie bieten derzeit jedoch keine offiziellen Lösungen oder Leitartikel wie einige andere Websites.

10. CodinGame

CodinGame unterscheidet sich ein wenig von den anderen Websites, da Sie nicht nur Codierungsprobleme in einem Editor lösen, sondern auch den Code für Spiele schreiben, die Sie direkt online spielen. Eine Liste der derzeit angebotenen Spiele finden Sie hier und ein Beispiel für eines hier. Das Spiel enthält eine Problembeschreibung, Testfälle und einen Editor, in dem Sie Ihren Code in einer von über 20 Programmiersprachen schreiben können.

Obwohl sich diese Website von typischen wettbewerbsfähigen Programmierwebsites wie den oben genannten unterscheidet, ist sie bei Programmierern, die gerne Herausforderungen lösen und an Wettbewerben teilnehmen, immer noch beliebt.

Diese Liste basierte auf einigen Dingen: meinen eigenen Erfahrungen mit den Websites, einigen Google-Suchanfragen, Quora-Posts und Artikeln wie diesem und diesem. Ich habe auch einige Foren und Subreddits wie r / learnprogramming besucht, um zu sehen, welche Websites normalerweise von den Benutzern dort empfohlen wurden. Haftungsausschluss: Ich arbeite bei Coderbyte, einer der oben genannten Websites.