No soy bueno en algoritmos, pero estoy tratando de descubrir algo. ¿Cuáles son algunas técnicas o libros o alguna sugerencia?

Antes de dar cualquier sugerencia, supongo que te sientes cómodo con la programación.

1. No hay ingrediente secreto.

Vipul Bansal lo dijo bien. Pero necesitas descubrir un truco que funcione para ti. Un truco para comenzar a aprender algoritmos. Un truco para crear y seguir un plan. Varía de persona a persona.

2. Técnicas.

1. Comience con las matemáticas. Sin una base matemática, uno no puede diseñar ni desarrollar un algoritmo eficiente. ‘Matemáticas concretas’ de Donald, Knuth y Patashnik, ‘Matemáticas discretas’ de Tremblay y Manohar son algunos buenos libros para comenzar.
2. Análisis de algoritmos. Aprenda los conceptos básicos del análisis asintótico. Por qué necesitamos analizar Algoritmos. Cómo medir el tiempo de ejecución de un algoritmo. Complejidad espacial y otros conceptos básicos.
‘Introducción a los algoritmos’ de CLRS, ‘The Art of Computer Programming’ de Donald E Knuth son libros interesantes para leer y debatir.
3. Siempre discuta algoritmos con sus amigos / colegas.
Aprende en línea. Si prefiere video conferencias, está bendecido con Coursera, Udacity, Udemy, NPTEL y muchos más. Sigue blogs relacionados con algoritmos. Consulte sitios como www.geeksforgeeks.com, los libros no son el único lugar.
4. Ahora viene la parte clave. Práctica. Lea la respuesta de @Prachi Jain sobre esto. Puede comenzar a resolver problemas en cualquiera de los sitios como uVA, codechef, project euler, codeforces, topcoder, etc.

No solo leas. Codifícalo. Impleméntalo. Esta es la regla general en los algoritmos de aprendizaje.

5. Después de pasar un tiempo con los algoritmos de aprendizaje (y / o cuando tenga una idea justa sobre el análisis de algoritmos), puede buscar los libros a continuación.

Manual de diseño de algoritmos de Skiena
Diseño de algoritmo por Klienberg y Tardos
Algoritmos de Robert Sedgewick.

Práctica.Pregunta.Implementación.

En cuanto a los enlaces, puede probar Algoritmos y estructuras de datos de Ravindrababu.
Usa cualquier libro. Tomé prestado estructuras de datos y algoritmos: conceptos, técnicas y aplicaciones de mi amigo y … sí, es bueno.

A partir de entonces, pruebe sus habilidades en codechef o SPOJ o Hackerrank o Topcoder o cualquiera.

PD: No hay una forma especial de aprender algoritmos, excepto el análisis del problema.

More Interesting

Creamos un algoritmo de software único para medir / cuantificar las diferencias de las imágenes a escala nano-planetaria. ¿Cómo monetizamos esto?

Cómo ordenar la lista en la columna como números y cadena, pero la cadena no se debe ordenar en Excel

¿Cuál es el mejor y el último algoritmo de última generación para encontrar documentos similares?

¿Hay algún número cuyo producto y suma sea 121?

Siempre sueño con trabajar en grandes empresas tecnológicas como Google o Facebook, pero mi habilidad con los algoritmos es muy débil. Intento resolver problemas en Google Code Jam y CodeChef, pero solo puedo resolver los fáciles. ¿Qué tengo que hacer?

Cómo resolver este problema con un árbol de segmentos o BIT

¿De dónde aprendo la estructura de datos?

Cómo agregar dos elementos de matriz usando punteros

Imprimí un libro electrónico con 600 páginas. El montón se cayó y ahora tengo que organizarlas en el orden de los números de página. ¿Cuál es la mejor manera de hacerlo?

¿Cuál es la diferencia entre los cursos avanzados de algoritmos 6.046 y 6.854 en el MIT?

Cómo diseñar algoritmos de aprendizaje automático desde cero

Cómo resolver la consulta de suma de potencia de rango usando treap

En Facebook, ¿qué determina los ocho amigos que se muestran en esa cuadrícula de imágenes de perfil 4 × 2?

Cómo implementar consultas mínimas de rango bidimensional con una complejidad de O (1) por consulta

¿Cómo reconocen los programas el nombre usando el procesamiento del lenguaje natural?