Достаточно сложно решаю задачи - составляю сложные алгоритмы, сразу приходят в голову муторный алгоритм и долгий, простых решений почему-то не вижу, из-за этого на контрольных и зачетах не справляюсь или каким-то чудом получается, возникает большая вероятность что могу попасть на комиссию. Сам студент я не лоботряс, все дни пашу как проклятый, тему усваиваю гораздо дольше, но поддается в итоге, говорят что голова на плечах есть. Усилия прикладываю, а эффекта мало. Не вижу простых решений, что делать? Заняться спортивным программированием? Или есть какие-то другие подходы?
Это навык как и практически все остальное. Прокачать его можно только тренировками, т.е. больше практики.
Т.к. вы хотите повысить эффективность своих решений, то просто практики мало. Вы должны решить задачу самостоятельно, а затем погуглить, как решают эту задачу другие люди. Ни в коем случае не наоборот. Может быть собрать чужой код, протестировать производительность вашего и чужого. Попытаться понять чем чужой код более эффективен, чем ваш, изучая исходники.
Кстати, навык понимания чужих исходников (и это то же навык) очень востребован в больших проектах.
Не всем нужно идти в технические ВУЗы. Может ты - гумантитарий?
Я говорю не с целью там делать victim-blaming а просто констатируя факты.
Может ты вообще в It будешь глубого несчастный человек? Зачем тебе это? Ну ВУЗ закончишь
а потом работа. Такое-же выгорание только еще хуже. И не преподы а начальники и деньги
будут над тобой висеть. Подумай.
Everything_is_bad, могу предположить, что печаталось на телефоне с помогайками, типа он выбрал слово из подсказки, а после него ставится пробел автоматом
Любые сложные решения состоят из множества менее сложных. А те в свою очередь - из еще менее сложных. Делайте декомпозицию, раскладывайте сложные задачи на примитивные и выполняйте.
mayton2019, Я как человек , знающий ЧТО мне нужно ,с Вами не соглашусь ,но спасибо за ответ :))) .К счастью,Ваш совет ко мне не относится .
Сложно решать -не значит не быть специалистом,очень жаль ,что Вы убеждены в том ,что если не дается легко ,значит нужно менять область .
Сколько люди преодолевают ,чтобы освоить материал , но они не как я -не заявляют о проблеме на весь Хабр:))) .Мне нужно знать, что делать дальше со своими данными ,развивать себя ,ну точно что-то не получается все кидать .
mayton2019, да))) не смотря на то что задачи идут тяжело.Очень радуюсь когда они получаются.В университете пока основы дают .Самые веселые задачи будут с 3 курса))
Svyatoclav_Richter, мне легко заходило. Я лет с 15 программировал игровые ПК (8-bit).
И поэтому в отрасли мне было все более менее знакомо. Ну разве что Кнута с Алгоритмами
пришлось подучить.
Если ты до этого никогда не писал код - то тебе будет конечно трудновато.
Единственный способ научиться решать задачи - решать задачи. Много и разных. Если задачи по програмированию, то прорешивайте какой-нибудь leetcode. Если минут за 5 вообще идей нет - смотрите подсказки. Еще через 10 - смотрите чужие решения. Важно только потом все равно эти решения самостоятельно написать потом сразу.
Решайте больше задач. Смотрите как их решают другие. Сравнивайте со своим решением.
Количество со временем переходит в качество. Набивается рука на синтаксисе и подходах языка. Плюс запоминаются решения. с которым приходишь несколько дней. Благо платформ много, например, https://leetcode.com/