Решил потренироваться программировать. Задачка на нахождение Equilibrium index массива - с codility.
Пробился добрый час(при норме в полчаса), но так и не смог сам додуматься. Нашел решение - в общем я был близок, но так мозгов и не хватило.
Как научиться?
С одной стороны понятно - дуй решать задачи с эйлера, того же кодилити или многих других. Но чувствую, что я слабоват для большинства задач - если раньше сталкивался в памяти мгновенно всплывает решение, если нет, то нет. Видно я слишком проникся идеологией StackOverflow Driven Development.
Прекомендуйте, как научиться?
Книги, где приводятся примеры, объясняются решения, может есть какие-то советы по общим подходам к решению таких задач?
e-maxx.ru/ алгоритмы с реализацией на C/C++ codeforces.ru/ тренировка/практика, есть разборы задач (не всех)
Книга: Томас Кормен "Алгоритмы. Построение и анализ"
Я считаю, что решать задачи по программированию не зная алгоритмов, не самое лучшее занятие, поэтому мне кажется нужно учить алгоритмы, и конечно же практиковаться.
Вы сначала посмотрите как делают "велосипеды", а потом уже изобретайте свои. Зачем изобретать изобретённое, на то он и опыт поколений. Читайте чужой код, вносите изменения, экспериментируйте, пробуйте снова решить задачку и глядя на предыдущий опыт у вас получится.
Находи задачу и решай. Если есть мысль по поводу как организовать тот или иной метод, но у тебя проблема с синтаксисом языка, то ищи на форумах ответы, так ты изучишь теорию и алгоритмы