Los dos tipos de problemas de diseño solicitados en las entrevistas son:
- La primera familia de problemas de diseño se relaciona con el diseño de sitios web de la vida real. Estos problemas se aplican a la teoría de escalabilidad, equilibrio de carga, redundancia, etc. Por ejemplo, Diseño de Facebook, Diseño de bitly, Diseño de Quora, Diseño de Uber, Diseño de IRCTC, etc.
- La segunda familia de problemas de diseño son hacer diagramas de clase. Por ejemplo, el diseño del sistema de ascensores, el diseño de aparcacoches, el diseño del sistema de restaurantes, etc.
Enfoque de 5 pasos para resolver problemas de diseño del sistema:
- Generación de casos de uso: Reúna todos los casos de uso posibles.
- Restricciones y análisis: cuántos usuarios, cuántos datos, etc.
- Diseño básico: diseño más básico. Caso de pocos usuarios.
- Cuellos de botella: encuentre los cuellos de botella y resuélvalos.
- Escalabilidad: gran cantidad de usuarios. Los pasos 4 y 5 entrarán en bucle hasta que obtengamos una respuesta satisfactoria.
“ Resolución de problemas en estructuras de datos y algoritmos ” escrito en varios lenguajes como C, C ++, Java, C #, Python, etc. Número de diagramas para explicar varios conceptos. También contiene un capítulo de Diseño del sistema al final que brindará un enfoque sistemático para resolver los problemas de diseño en una entrevista.
- ¿Es posible deshacerse de todos sus pasatiempos y solo estudiar?
- ¿Puede alguien estudiar su propia cultura antropológicamente libremente?
- ¿Cuáles son las diferencias entre estudiar economía en los EE. UU. Y el Reino Unido?
- ¿Cuál es el número mínimo de horas de estudio por día necesarias para aprender Java? Por ejemplo, creando programas basados en eventos y OOP.
- ¿Qué podría ser una desventaja de estudiar neurociencia?
Algunos problemas que había discutido en el último capítulo son:
- ¿Cómo diseñarías Facebook? ¿Cómo diseñarías poco? etc.
- También se discute cómo diseñar un sistema de ascensor o sistema de restaurante, etc.
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