¿Qué lenguaje, libro o técnica es el mejor punto de partida cuando estás frustrado con tus habilidades de programación y quieres tener una sólida formación en algoritmos y estructuras de datos?

  1. Deja de centrarte en los concursos. No tienen nada que ver con las tareas de programación diarias. Esos son solo lugares para que ciertas personas puedan presumir. Tiene tanta importancia para ti como un concurso de levantamiento de pesas

    hace a un corredor de maratón.
  2. La confianza viene de la práctica. Practica, practica, practica y practica un poco más. Has tenido las clases básicas. Ahora, solo necesita pasar las horas haciéndolo para que esté cómodo y sea automático. ¿Crees que Yo-Yo Ma acaba de recoger el violonchelo y era un virtuoso?

    No, él ha invertido 50,000 horas practicando. ¿Qué tan lejos estás? 100 horas? Perdónate por no ser perfecto todavía, y sigue practicando.
  3. ¿Tiene que ser C ++? Has elegido uno de los idiomas más complicados y hay mucho que dominar. Tal vez deberías trabajar hasta eso? ¿Qué tal si regresas a C y practicas allí primero? Hay mucho trabajo allí, y no hay razón para que un problema razonable no pueda resolverse en C en su lugar. Claro, puede ser un poco menos elegante en algunos casos, pero como está más cerca del metal desnudo, comprenderá mejor lo que está haciendo.

La programación siempre exige tiempo.
Necesita 10 años para dominarlo.
Y el punto principal es una adicción … si no somos adictos no podríamos ir a buscar tiempo y concentrarnos.

Déjame contarte mi historia … Durante mi graduación … tuve un examen de matemáticas el lunes. Solo teníamos el domingo para prepararnos … Pero el domingo estaba participando en codechef.
Entonces, básicamente, si eres adicto, automáticamente encontrarás algo de tiempo para ello.

PD. Si sientes que no te sientes cómodo con eso. Encuentre su campo real de interés y trabaje en eso. Automáticamente podrá recuperar el tiempo.

C ++ no es el mejor lenguaje para comenzar a programar. c sería mucho mejor, pero tengo la sensación de que todavía es demasiado profundo para ti. python, ruby ​​o js / nodejs es mucho más satisfactorio para empezar. Lo bueno es que después de aprender uno de esos idiomas podrás aprender otros mucho más fácilmente.

Aconsejaría tomar el curso de Algoritmos Segdwicks en Coursera.

Leer el libro Algoritmos + Estructuras de datos = Programas

No use C ++ todavía, use Pascal, Python o incluso C # primero

¿Quieres saber la dura verdad?
No te gusta la ingeniería. Lo estás haciendo porque pensaste que es la mejor opción para hacer en India o alguien de tu familia te motivó a hacerlo.
Encuentra tu pasión e intenta trabajar para alcanzarla.
Estoy bastante seguro de que después de hacer tu ingeniería, trabajando durante 2-3 años, obtendrás un MBA.
Tendencia general india.
Sigue tu pasión y haz lo que quieras hacer en la vida, no lo que otros hacen o lo que otros te dicen que hagas.