Cómo desarrollar mi confianza para resolver la estructura de datos y las preguntas de algoritmos en la entrevista técnica

Si ya tiene un buen conocimiento de la teoría de las estructuras de datos y solo quiere prepararse para las entrevistas, creo que geeksforgeeks sería una buena opción. Busque las preguntas de las compañías a las que apunta, en el sitio y comience a resolverlas. Este enfoque le ayudaría a prepararse más rápido para las entrevistas.

Pero, si realmente quieres aprender Estructuras de datos y realmente quieres dominarlas, entonces creo que deberías comenzar a leer “Introducción a los algoritmos” de CORMEN. Lee sobre las complejidades del espacio y el tiempo. No solo escribas código, aprende a mejorarlo. Cuando codifique un problema, mantenga ese código como primer borrador y continúe volviéndolo e intente resolverlo de diferentes maneras. La mejor manera que puede ayudar a aprovechar su teoría DS es la práctica. Y con la práctica, me refiero a tratar de resolver el mismo problema de diferentes maneras. Ver, hay miles y miles de problemas por ahí. No puedes resolver cada uno de ellos, pero lo mejor que puedes hacer es prepararte para ellos. Y la mejor manera es que resuelva cada problema de la manera más posible. Una vez que se haya agotado con sus soluciones, busque las soluciones de otros desarrolladores. Esto puede ayudarte a entender una mentalidad diferente.

Vaya a este enlace, “Resolver problemas de código de algoritmos”. Elija cualquier tema que desee y comience a codificar.

Mucha gente recomienda “Introducción a los algoritmos” de Cormen para los algoritmos, como también mencioné anteriormente. Y ese libro definitivamente es la biblia de los algoritmos. Pero, leí un libro más “The Algorithm Design Manual” de Steven Skiena y me convertí en un gran fanático del trabajo de este hombre. Si quieres puedes darle una oportunidad a este libro.

La confianza en cualquier cosa (incluidas las entrevistas) proviene de la construcción de la autoeficacia.

Para desarrollar la autoeficacia, debe poder realizar una gran tarea, como hacerlo bien en una entrevista y dividirla en pasos más pequeños.

Vamos a desglosar el proceso en pasos más pequeños. Concéntrese en cada paso a la vez, y aumentará su confianza y su entrevista.

Dicen que la práctica es perfecta, pero antes de sumergirme en la práctica para las entrevistas y asegurarme de que está preparado para el éxito, me aseguraría de que comprende los fundamentos de la estructura de datos / algoritmo.

Paso 1: Fundamentos de DS&A

Desea asegurarse de tener un conocimiento básico de los fundamentos de DS&A.

Programaría un tiempo y repasaría cada uno de estos temas, solo uno por día o día por medio. A un ritmo en el que sientes que no vas a quemarte.

Las principales áreas de DS&A que se deben conocer para las entrevistas son:

  • Estructuras de datos:
  • Matrices, Pilas, Colas, Listas enlazadas, Hashtables, Árboles, Recursión, Clasificación, Búsqueda
  • Algoritmos:
    • Codiciosos, Dividir y Conquistar, Programación Dinámica, Algoritmos Gráficos

    La mejor parte es que hay grandes fuentes en línea para comenzar a aprender esto:

    • BeeHyve – Estructuras de datos y BeeHyve – Algoritmos – El mejor lugar para aprender ciencias de la computación con recursos de aprendizaje de estudiantes de toda la web para cualquier tema en CS.
    • Geeks 4 Geeks: este sitio web tiene muchos ejemplos de aplicaciones de estructuras de datos y algoritmos que se pueden encontrar en las entrevistas. Incluso tienen pruebas y rompecabezas.
    • VisualAlgo: ¡una herramienta increíble que ayuda a visualizar cómo funcionan los algoritmos!

    Paso 1.5 y 2: Práctica – Aplicar lo que aprendes

    Siéntase libre de comenzar a practicar, ya que lo aprende especialmente para incorporar más los conceptos. Sin embargo, una vez que haya terminado de cubrir los aspectos fundamentales, solo recomendaría sumergirse y practicar los problemas de la entrevista.

    Adquiera el hábito de hacer un problema al día. Solo uno.

    Algunos sitios web excelentes para comenzar con mucha práctica:

    • Career Cup – Utilicé mucho este sitio web. Vaya a las preguntas más votadas y comience a bajar de la lista.
    • Archivo de problemas de Top Coder: aunque es un sitio web de programación principalmente competitivo, tiene muchos problemas de práctica. La mejor parte es que tienen un IDE integrado donde puede escribir, compilar y ejecutar sus respuestas. Retroalimentación en tiempo real.
    • Código de Leet: más preparación para la entrevista centrada en la industria, incluidos idiomas que normalmente no aprendes en la escuela como Go, Swift, etc.

    Debe comprender las estructuras de datos básicos (lista enlazada, pila, colas, árboles, tabla hash, montón, gráficos) y algoritmos. Una vez que entienda las estructuras de datos y los algoritmos básicos, deberá practicar tanto como sea posible.

    Una vez que tenga suficiente práctica, podrá resolver nuevos problemas sobre la base de los problemas anteriores que ya había resuelto.

    Si buscas preparación para la entrevista. Puede comenzar con ” Resolución de problemas en estructuras de datos y algoritmos ” escrito en varios idiomas como C, C ++, Java, C #, Python, Go, etc. Estos libros son fáciles de seguir y están escritos para el punto de vista de la entrevista . Además, estos libros tienen el último capítulo sobre Diseño de sistemas , que también se requiere en las entrevistas.

    Los enlaces de los libros sobre amazon están abajo:

    1. Resolución de problemas en estructuras de datos y algoritmos usando C

    2. Resolución de problemas en estructuras de datos y algoritmos utilizando C ++

    3. Resolución de problemas en estructuras de datos y algoritmos utilizando Java

    4. Solución de problemas en estructuras de datos y algoritmos utilizando C #

    5. Solución de problemas en estructuras de datos y algoritmos utilizando Python

    6. Estructuras de datos y algoritmos en Go

    Descargo de responsabilidad: Soy autor de todos los libros anteriores.

    Práctica. ¡Empezar ahora! codeforces.com