¿Cuánto tiempo lleva trabajar para descifrar la entrevista de codificación si no tengo una buena idea sobre la estructura de datos y el algoritmo?

¿Qué pasa si me preguntas:

¿Cuánto tiempo lleva leer un libro lleno de problemas de práctica de cálculo si no sé mucho sobre cálculo?

No esperarías que esa pregunta tuviera una buena respuesta, ¿verdad? Porque depende Depende de lo que ya sabes que no es cálculo: ¿sabes trigonometría, álgebra, … aritmética? ¿Aprende rápido y es bueno en matemáticas? Sin saber estas cosas, nadie podría darle una estimación razonable.

Es lo mismo con Cracking the Coding Interview , un libro lleno de problemas de práctica de codificación, estructura de datos y algoritmos. Entonces no conoces algoritmos ni estructuras de datos. ¿Qué tan fluido eres en la codificación? ¿Qué tan buena es tu intuición matemática? ¿Has hecho matemáticas basadas en pruebas antes? ¿Eres un aprendiz rápido en general?

En el mejor de los casos, ya eres un programador fuerte y tienes una intuición matemática significativa y experiencia con las matemáticas basadas en pruebas (algunos cursos de pregrado o posgrado en álgebra abstracta o análisis, por ejemplo). Luego, con un estudio comprometido, pude ver que alcanzas un nivel en el que puedes entender gran parte de Cracking the Coding Interview en un mes o dos.

Pero si no eres ninguna de estas cosas? Es difícil decir cuánto tiempo le llevará, ya que intentará mejorar su fluidez de codificación, intuición matemática, resolución de problemas y conocimiento real de algoritmos y estructuras de datos, todo al mismo tiempo. Es difícil hacer una estimación razonable … podría tomar seis meses … podría tomar un año … podría tomar dos años … tal vez no pueda comprenderlo hasta que tome otra ruta para aprender el material (diferente libros / recursos). Es difícil de decir.

Un pensamiento final: descifrar la entrevista de codificación no pretende ser una introducción a algoritmos y estructuras de datos. Es un libro de problemas de práctica. Al igual que no esperarías que un libro de cálculo practique problemas para enseñarte cálculo (recurrirías a cursos en línea, un libro que está etiquetado como un libro de texto introductorio, o algo por el estilo), no debes esperar descifrar La entrevista de codificación es la mejor forma de introducirse en algoritmos y estructuras de datos, aunque es un buen recurso para practicar y consolidar su conocimiento.

Es genial que estés dispuesto a mejorar tus habilidades y tengas el objetivo de estudiar a través del libro CTCI.

Como otras respuestas ya resaltan, es posible que deba pasar primero por un libro dedicado o una clase de estructuras de datos y algoritmos. Si pudiera sugerir, un buen libro es El manual de diseño de algoritmos de Skiena.

Una vez que haya terminado un libro de estructuras de datos y algoritmos, podrá revisar el CTCI con mucha más facilidad. Supongo que 2/3 meses serían suficientes si tienes algo como 10h por semana.

No creo que pasar por CTCI sea una buena idea si no tienes conocimiento de la estructura de datos y los algoritmos. Si bien el libro ofrece una excelente introducción y algunas ideas en profundidad, en mi experiencia, no es mejor utilizarlo como herramienta de aprendizaje principal. Es mejor obtener un conocimiento previo primero y luego sumergirse.