Básicamente, estoy de acuerdo con Garry Taylor. Probablemente podrá resolver el 99% de los problemas sin tener en cuenta el conocimiento de algoritmos (profundos). Sin embargo, si solo pasa un par de semanas o meses para terminar de leer uno o dos libros de algoritmos. le ayudará a pasar la entrevista y aumentará la confianza en la programación. Hay dos libros que me gustaría recomendarles. Puede elegir uno de ellos para leerlo una vez, dos veces … hasta que tenga el concepto / conocimiento básico sobre los algoritmos más utilizados (clasificación, búsqueda binaria …), está totalmente bien omitir los algoritmos avanzados (Gráfico …) si no te interesa
- Introducción a los algoritmos, 3a edición
- Estructuras de datos y algoritmos en Java, sexta edición
(Actualizado el 24/12) Creo que lo que quiere decir el autor es: Muchas de las estructuras de datos más utilizadas (Lista / Conjunto / Mapa / Montón …) y Algoritmos (Ordenar, Búsqueda binaria) ya se han implementado en los lenguajes de programación modernos. No es necesario inclinar las estructuras de datos / algoritmos profundamente para tener la capacidad de implementarlos usted mismo. Sin embargo, para aprender un lenguaje de programación y usarlo eficientemente, necesitará los conceptos básicos sobre las estructuras / algoritmos de datos más utilizados.
- ¿Cuál es la mejor manera de reorganizar los datos en la lista para que dos elementos similares no estén uno al lado del otro?
- ¿Tengo que estudiar matemáticas discretas, algoritmos y estructura de datos para convertirme en un buen desarrollador de Android?
- ¿Cuáles son los algoritmos de nivel básico con los que debemos comenzar y cuáles son los algoritmos avanzados que debemos estudiar?
- ¿Cuál es el máximo común divisor de 55 y 75 usando el algoritmo euclidiano?
- ¿Cuáles son todas las estructuras de datos que conoce? ¿Cuál de estos usas con frecuencia? Agrúpelos en "Básico" y "Avanzado".