Was ist das beste Buch, um Datenstrukturen und Algorithmen für Java zu lernen und sich auf mein Praktikum bei Facebook vorzubereiten?

In Bezug auf Bücher ist Cracking the Coding Interview definitiv eine gute Ressource.

Ich habe mich jedoch persönlich auf meine Interviews mit einer Reihe von Online-Ressourcen vorbereitet. Hier sind einige der Dinge, die ich verwendet habe:

  1. Fragen in Vorstellungsgesprächen bei Programming | Interview-Kuchen. Diese Seite ist fantastisch. Es weist Sie auf die Probleme hin, wenn Sie nicht weiterkommen, wie es ein Interviewer tut, und weist im Allgemeinen Probleme auf, die mit echten Interviews zu tun haben.
  2. GeeksforGeeks | Ein Informatikportal für Geeks. Dies ist nur eine gute Ressource für alle Arten von Datenstrukturen / Algorithmen.
  3. LeetCode Online Judge. Eine gute Ressource, wenn Sie für Telefoninterviews üben möchten (Online-Codierung), und es gibt auch großartige Foren, wenn Sie Lösungen von vielen verschiedenen Personen ausprobieren möchten.
  4. Das Video-Tutorial zum Coding Interview knacken. Dies wird auf Hackerrank gehostet. Hackerrank hat einige wichtige Fragen (ähnlich wie Leetcode), und diese Videoserien sind besonders nützlich, wenn Sie mit grundlegenden Datenstrukturen / -algorithmen nicht vertraut sind.

Hoffe das hilft!

Um Interviews zu knacken, braucht man drei Dinge:

1. Gutes Verständnis von Datenstrukturen und Algorithmen.

2. Gutes Verständnis des Systemdesigns.

3. Gute Praxis auf Websites wie Topcoder usw.

Sie können mit „ Problemlösung in Datenstrukturen und -algorithmen “ beginnen, die in verschiedenen Sprachen wie C, C ++, Java, C #, Python usw. geschrieben sind. Diese Bücher sind leicht zu befolgen und wurden aus Interviewgründen verfasst. Zusätzlich haben diese Bücher das letzte Kapitel über System-Design , das auch in Interviews benötigt wird.

Links zu den Büchern über Amazon finden Sie unten:

1. Problemlösung in Datenstrukturen und Algorithmen mit C

2. Problemlösung in Datenstrukturen und Algorithmen mit C ++

3. Problemlösung in Datenstrukturen und Algorithmen mit Java

4. Problemlösung in Datenstrukturen und Algorithmen mit C #

5. Problemlösung in Datenstrukturen und Algorithmen mit Python

6. Problemlösung in Datenstrukturen und Algorithmen mit Visual Basic .Net

7. Datenstrukturalgorithmen mit JavaScript

Zweitens sind Sie mit den Grundlagen von Datenstrukturen und Algorithmen vertraut. Sie können für die Bibel der Datenstruktur und Algorithmen gehen: CLRS. Nebeneinander sollten Sie an verschiedenen wettbewerbsorientierten Programmierwettbewerben teilnehmen.

  • Beginnen Sie mit dem Lösen von Problemen im Buch Cracking the Coding Interview. Sie haben einfache bis mittlere Schwierigkeitsgrade und decken die grundlegenden Datenstrukturen (Arrays, Strings, Listen, Stapel, Warteschlangen, Bäume und Graphen) und Algorithmen (Bitmanipulation, Rekursion und dynamische Programmierung, Sortieren und Suchen, Skalierbarkeit und Speichergrenzen) ab. das musst du wissen.
  • Danach können Sie mit LeetCode üben. Andere Online-Sites, auf denen Sie Fragen zu Vorstellungsgesprächen üben oder finden können: GeeksForGeeks, HackerRank, CareerCup, Glassdoor.
  • Wenn Sie sich bereit fühlen, empfehle ich Ihnen, ein paar Probeinterviews zu führen. Probleme alleine zu lösen ist etwas ganz anderes, als sich einem echten Interview in einer Drucksituation zu stellen.

Alles Gute!!

Ich empfehle Ihnen, ein Buch mit dem Titel “Crack The Coding Interview” zu lesen, das Ihnen in Ihrem Interview sehr helfen wird

Dies ist der Link für das Buch in Amazon

Cracking the Coding Interview, 4. Ausgabe: Gayle Laakmann, Gayle Laakmann McDowell: 9781451578270: Bücher

Ich würde Sie auf eines der besten Bücher verweisen, ein Klassiker, der sich mit der Kunst des Programmierens befasst: “Die Praxis des Programmierens (Kernighan & Pike)”.

Sie können das PDF hier kostenlos herunterladen. The Practice of Programming von Brian W. Kernighan und Rob Pike.pdf

Hilft beim Aufbau eines soliden Fundaments.

Dies ist ein ziemlich gutes Buch über Datenstrukturen und Algorithmenanalyse in Java

Aber ich bezweifle, dass Sie nur DS und Algorithmen kennen müssen.

  • Schaum-Serie Datenstrukturen in Java
  • Datenstrukturen in C ++ Oxford
  • Lernen Sie Datenstrukturen und Algorithmen Sams
  • Probieren Sie verschiedene Probleme wie Ausdrucksbewertung und -konvertierung, Backtracking oder andere Anwendungen aus.

Introduction to Algorithms ist ein Buch von Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest und Clifford Stein

Ich schlage Ihnen vor, dies zu lesen.

Ich glaube nicht, dass es speziell für Java geschrieben wurde, aber Cormen et al. “Introduction to Algorithms” scheint ziemlich umfassend zu sein.