Quiero aprender estructuras de datos OOP y algoritmos usando PHP. ¿Cuáles son los buenos recursos que usan PHP para enseñar algoritmos?

En general, las personas usan lenguajes tradicionales como C, C ++, Java, C #, PHP para aprender estructura de datos y algoritmos, pero es independiente del lenguaje.

Solución de problemas en estructuras de datos y algoritmos usando PHP ” contiene PHP. Este libro es fácil de seguir y está escrito para ejemplos resueltos del punto de vista de la entrevista numérica. 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 en Amazon están abajo:

Estructuras de datos y algoritmos con PHP 7

Hay idiomas tradicionales para aprender DS y Algo. Los enlaces de los libros en Amazon están abajo:

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

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

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

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

5. Resolución de problemas en estructuras de datos y algoritmos usando Python

No estoy seguro de que PHP (o cualquier otro lenguaje de muy alto nivel) sea bueno para esto, la razón es que no tienes control sobre la memoria y algunos de los fundamentos de las estructuras de datos dependen de la memoria vinculada.

Además, si solicitara un trabajo en una empresa tecnológica seria, esperarán que use C / C ++ o Java para las estructuras de datos / algoritmos.

Dicho esto, definitivamente puede crear implementaciones de todas las estructuras de datos y algoritmos, pero tales implementaciones serían significativamente diferentes de una C / C ++.

Estamos comenzando a ver a muchas personas en la comunidad PHP haciendo uso de patrones de diseño, lo cual es algo hermoso de ver. Me agrada ver que los desarrolladores de PHP comienzan a tomar su oficio más en serio.

Dicho esto, la mayoría de los algoritmos y las estructuras de datos, al menos como se enseñan a nivel académico, no ven la luz en PHP por exactamente la razón por la que Luis Tadeo ya ha mencionado. Los que se usan tienden a ser elementos como iteradores y colecciones simples, en lugar de elementos de tipo árbol y lista vinculada.

More Interesting

¿Qué es el "peso" en el algoritmo de Facebook?

Se da una matriz (n). La matriz puede atravesarse por saltos de tamaño <= k. Si en el índice i, un salto puede aterrizar en cualquier lugar desde i + 1 hasta i + k index.

¿Cuál es el punto de usar programación dinámica cuando la complejidad de tiempo en la mayoría de los códigos es O (n ^ 2) (que no es tan bueno, es decir, usamos dobles para bucles incluso en DP)?

Matrices de sufijos: Dadas dos cadenas s1 y s2. ¿Cuál es el mejor algoritmo para encontrar el número de subcadenas comunes entre s1 y s2 de longitud 1, 2,… hasta min (| s1 |, | s2 |)?

¿Cuál es su estructura de datos favorita y por qué?

15 personas se sentarán en una fila de 15 sillas. ¿Cómo calculo cuántos planes de asientos se pueden hacer, donde dos planes de asientos se consideran iguales si dos planes comparten cuádruples adyacentes? o ¿Cómo puedo crear un algoritmo eficiente para encontrar límites inferiores para 15 o menos personas?

¿Qué es mejor para eliminar números específicos de una matriz, Java o C ++?

¿Alguien puede dar el algoritmo detallado del algoritmo mejorado de segunda oportunidad?

¿Cómo hacen las ligas profesionales los horarios?

¿Cuál es la diferencia entre array estático y automático?

¿Google no tiene mejores algoritmos, sino solo más datos? Peter Norvig es citado diciendo eso.

Estoy tratando de incrementar un elemento de matriz de caracteres inicializado a cero pero no puedo, ¿por qué?

¿Cuáles son los mejores algoritmos de Real Space Renormalization Group?

¿Hay algún proyecto de aprendizaje automático de finanzas que pueda ejercer con Python?

¿Debería un ingeniero que no sea CS aprender programación, algoritmos y estructuras de datos?