Connect with us

Программирование

Год последовательного Leetcod-инга каждый день

В конце концов, неважно, насколько вы умны, глупы или удачливы, если вы достаточно последовательны, вы сможете обогнать всех людей, которых вы считаете более талантливыми или умными.

Опубликовано

/

     
     

Это год моего постоянного программирования, каждый день, без выходных 🏃. Я получил награду за то, что был среди 0.12% последовательных кодеров на Leetcode.

Как я этого добился?

1. Я сделал это привычкой, не великая наука. Джеймс Клир говорит об этом в своей книге «Атомные привычки». Мы делаем несколько привычных дел каждый день, даже не задумываясь об этом, например, чистим зубы или завязываем шнурки. Эти привычки находятся в состоянии автоматизма, мы настолько к ним привыкли, что нам не нужна мотивация, чтобы выполнять их ежедневно. Чтобы выработать новую привычку, требуется от 21 до 66 дней.

2. Все перемены трудны поначалу, запутаны в середине и роскошны в конце. (Робин Шарма)

3. После определенного момента мне нравилось программировать каждый день, и я чувствовал, что чего-то не хватает, если я не решу какую-либо задачу.

4. Дни, когда ты ничего не хочешь делать, но все равно заставляешь себя сделать это, — это дни, когда ты подсознательно говоришь себе, что это важно! Уловка, которой вы можете следовать, чтобы подтолкнуть себя, состоит в том, чтобы бросить вызов своему эго с помощью очень маленькой задачи, такой как решение одной проблемы или просто написание строки кода (это также взято из “Атомных привычек”).

Вот несколько советов, которые я могу дать для выполнения задач в Leetcode

  • Сначала создайте свой «набор инструментов». Обычно мы заставляем себя получить решение в любом случае, и как только мы видим решение, мы чувствуем себя плохо, и весь негатив возвращается. Большинство людей не понимает, что нужно знать основы, прежде чем решать конкретные проблемы. Как вы можете рассчитывать на хорошие оценки на экзамене, если не изучали ни одной главы по предмету? Улучшите свои основы/синтаксис, добавьте их в свой набор инструментов, а затем подтолкните себя к решению проблемы.
  • Решения — это еще не все. Вы должны начать ценить свои усилия, а не само решение. Навыки решения проблем развиваются за те 30 минут, когда вы решаете задачу, чтобы получить решение, используя различные шаблоны и инструменты из вашего набора инструментов и применяя их для получения решения. Это преднамеренная практика, которая делает вас лучше.
  • Код — это еще не все. Возьмите ручку и бумагу, попытайтесь обдумать все возможные решения и сосредоточьтесь на построении решения по кирпичикам. Начните с самого маленького примера, затем немного побольше, а затем подумайте о пограничных случаях. Как говорится, подумай дважды, напиши один раз.
  • Концепции ограничены, проблемы бесконечны. В Leetcode более 2,000 задач, и вам не нужно решать их все. Однако есть всего 20–30 структур данных и алгоритмов, которые вам нужно освоить.
  • Читайте чужой код. Я всегда иду в раздел обсуждения и просматриваю лучшие способы решения проблемы, даже если я смог решить проблему самостоятельно. Есть много лучших способов и точек зрения на решение одной и той же проблемы, о которых вы, возможно, не знаете.
  • Всегда засекайте время. Установите расширение, чтобы засекать время для каждой задачи, разбивка будет следующей: легкая ~ 15 минут, средняя ~ 30 минут, сложная ~ 45 минут. Постарайтесь отсрочить свое вознаграждение от того, что вы видите решение.
  • Попробуйте действовать так, как будто вы объясняете кому-то проблему. Может быть трудно четко сформулировать свои мысли и объяснения интервьюеру —  практикуйте это с каждым вопросом. Действуйте так, как будто вы объясняете свое решение 5-летнему ребенку, это заставит вас осознать свои пробелы в знаниях (техника Фейнмана).
  • Не заботьтесь о своем рейтинге. Независимо от того, сколько вопросов вы решите в конкурсе, занимайтесь ими постоянно. Как только вы примите участие, вы завершите самую сложную часть.
  • Решайте вопросы конкурса снова. После конкурса попробуйте решить вопросы без ограничения по времени, если вы этого не сделаете, проверьте решения других, поймите, что они сделали, прочитайте об этой конкретной теме и снова решите ее, используя конкретное знание.

В конце концов, неважно, насколько вы умны, глупы или удачливы, если вы достаточно последовательны, вы сможете обогнать всех людей, которых вы считаете более талантливыми или умными.

Источник

Если вы нашли опечатку - выделите ее и нажмите Ctrl + Enter! Для связи с нами вы можете использовать info@apptractor.ru.
Advertisement

Популярное

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: