Для кого этот пост в блоге?

Если вы просто хотите изучить Python, HTML/CSS и стать полноценным разработчиком, который не хочет изучать алгоритмы и структуры данных, возможно, этот пост не для вас. Но наоборот, если ваши познания в математике не такие уж приличные, но вы хотите стать полноценным инженером-программистом, не только изучить Python, HTML/CSS и т. д., но также хотите изучить алгоритмы/структуры данных и, как побочный эффект, продукт может подавать заявки и проходить собеседования для крупных технологических компаний, таких как Google, Amazon и т. д., тогда этот пост для вас.

Примечание: я рассказал больше о том, почему нужно пройтись по основам математики, в этом посте в блоге здесь.

Без лишних слов, давайте начнем со списка.

Основные математические темы

  1. Основы алгебры: я говорю, по крайней мере, об основных вещах, таких как решение двух уравнений для x и y, решение полиномиальных уравнений, знание базовых вещей о полиномиальных уравнениях более высокого порядка и т. д.
  2. Последовательности: такие как арифметические последовательности, геометрические последовательности, гармонические последовательности, их свойства и формулы сумм. Это возникает, когда кто-то изучает алгоритмы или решает вопросы по литкоду.
  3. Множества и отношения.Множество как понятие чрезвычайно полезно знать, поскольку оно встречается в алгоритмах/структурах данных и даже много раз (для меня оно появлялось слишком много раз). Кроме того, во многих языках программирования, таких как C++, Python, буквально существует структура данных, называемая набором, поэтому вам определенно стоит проверить эту тему.
  4. Треугольники, квадраты, прямоугольники, круги, углы и все их свойства: я сгруппировал все это вместе, но вам будет полезно узнать о них и их основных свойствах. Сейчас они обычно не встречаются непосредственно в разработке программного обеспечения, но если вы планируете изучать алгоритмы/структуры данных и решать проблемы с литкодом, я бы посоветовал вам изучить и это.
  5. Тригонометрия. Обычно тригонометрия не проявляется при изучении алгоритмов/структур данных. Но изучение этой темы и решение сумм по этой теме тренирует вас в написании алгоритмов без программирования. И кто знает, если вы когда-нибудь столкнетесь с этим в своей работе по разработке программного обеспечения, тогда, по крайней мере, вы будете подготовлены с основами.
  6. Координатная геометрия. В некоторых областях разработки программного обеспечения это может встречаться чаще, чем в других. Но все же наличие школьных знаний в этом вам точно не помешает. Кроме того, это должно быть после тригонометрии, желательно, поскольку в этом используется тригонометрия.
  7. Неравенство. Это определенно проявляется повсюду. Не только в алгоритмах и структурах данных, НО ВСЕ В КОДИРОВАНИИ. Пожалуйста, изучите это.
  8. Степени и логарифмы:логарифм постоянно появляется в алгоритмах/структурах данных (о, если бы я получал доллар за каждый раз, когда логарифм появляется в алгоритмах/структурах данных). А логарифм — это понятие, происходящее от силы чисел. Так что эта тема в целом обязательна к изучению.
  9. Ограничения.Концепция ограничений — это очень круто. Этого нет в базовых алгоритмах/структурах данных, но я предлагаю вам изучить и это. Потому что, изучая это, вы будете оттачивать темы, которые вы изучали до этого.
  10. Дифференциальное и интегральное исчисление. Обычно это не проявляется в ваших исследованиях, связанных с алгоритмами или структурами данных (если только вы не хотите стать продвинутым в этом, а не просто проходить собеседования по программированию). Но если вы сможете узнать об этом, то пользы предостаточно. Во-первых, приведенные выше концепции будут казаться простыми для работы, что необходимо для изучения алгоритмов/структур данных.
  11. Булевая алгебра и дискретная математика.Эта темавсе время всплывает в программировании и является обязательным предметом на многих степенях, связанных с информатикой и программной инженерией.

Кратко о том, как выучить эти математические темы самостоятельно

Ниже приведены несколько моментов, которые вы должны иметь в виду при изучении математики на пути к разработке программного обеспечения.

  1. Практика.Одна простая вещь, которую вы можете сделать, это: ПРАКТИКА
    Я повторил этот момент два раза в предыдущем предложении, потому что не могу выделить его в достаточной степени. Но потренируйтесь решать задачи по каждой из этих тем не менее 2 раз, чтобы понятия и математическое мышление действительно укоренились в вас.
  2. Следуйте определенному упорядоченному пути обучения: упорядочивайте эти темы таким образом, чтобы предварительные темы изучались, пока вы изучаете более сложные темы. Пример: при решении задач, связанных с пределами и дифференциальным исчислением, ваши понятия логарифмов будут тренироваться, потому что они проявляются в задачах исчисления.

Объяснение того, как следует самостоятельно изучать математику в своем путешествии к разработке программного обеспечения, требует отдельной статьи, поэтому я пока заканчиваю ее здесь.

Надеюсь, вы найдете эту статью полезной. Пожалуйста, не стесняйтесь обращаться ко мне. До скорого!