Начал учить программирование(с#) в качестве хобби, до этого абсолютно никак не был с ним связан. Вроде бы всё получается осваиваю встроенные в язык функции и т.п.
Проблема в том, что я совершенно не понимаю алгоритмы. Пытался читать Кунта и Кормена, но в ужасе закрыл что первого, что второго, поняв, что мне до этого уровня ещё надо дорасти. Как проще изучать алгоритмы, когда вообще ничего в них не понимаешь?
Попробуйте начать с реализации различных алгоритмов сортировки: пузырьковая, вставками, слиянием, быстрая и т.д. В общем, это та часть алгоритмов, которые наиболее популярно используются. Можно также попробовать реализовать различные численные методы - Ньютона, хорд, и т.д.
Как уже написал @WolfdalE - изучайте сначала простые алгоритмы. Причем перед прочтением информации о алгоритмах сортировки, к примеру, сначала сами задумайтесь над тем, как бы вы сами реализовали сортировку. Придумав несколько своих способов сортировки - проанализируйте, какой из них в каком случае будет работать быстрее и/или с меньшим количеством памяти. После этого - читайте о уже готовых алгоритмах и сравнивайте их с придуманными вами.
Просто нужно чуть чуть попрактиковаться на простых примерах. Если хотите, могу прислать некоторые задачки из универа =) Так же можно попробовать порешать задачки с сайтов типа acmp.ru/. Там есть достаточно простые задачи
Желательно хорошо знать математику и иметь алгоритмическое мышление. Странно, что Кормен вам не зашел. Не знаю, какую его работу вы смотрели, но у него есть книга «Алгоритмы. Вводный курс», и в ней много иллюстраций с наглядными примерами — она рассчитана именно на новичков.
Если самостоятельно изучение совсем туго идет, выберите курсы kursfinder.ru/algorithms/ и посвятите обучению несколько месяцев. Преподаватели вам по полочкам все объяснят. При выборе советую вам смотреть на возможность общаться с преподавателем, потому что не все онлайн-школы предоставляют такую возможность, где-то вы просто будете проходить онлайн-занятия и выполнять домашку, а за общение с экспертом попросят еще и денежки доплатить. Обратите на это внимание:)