Ответы пользователя по тегу Алгоритмы
  • Что такое информатика и с чем её едят?

    @Dum_spiro_spero
    Насчет ИИ.
    Это тема в которой пересекается много дисциплин.
    Причем даже такие как психология, физиология (мозга) и лингвистика.
    В плане математики - это обязательно нейронные сети - перцептроны, адаптивно-резонансная теория, и т.п...
    Как ни странно - еще бы порекомендовал НЛП. Там хорошо учат структурировать речь, вычленять смысловые единицы, понятия, и т.п... Посмотрите "Структуру магии" Бэндлера - название попсовое, а от содержания можно заснуть, но хотя бы гляньте.
    Робототехника это не совсем то - роботу нужен уже готовый алгоритм, готовые реакции на сигналы с датчиков, и т.п... В общем вопрос какой частью, этой огромной задачи вы хотите заниматься.
    В плане программирования - обязательно освойте С и основы С++. Если вас занесет в инженерное программирование роботов - то все будет на С.
    Численные методы - обязательно.
    Урматфиз - обязательно.
    Ответ написан
    Комментировать
  • Где найти олимпиадные задачи с теорией и разборами?

    @Dum_spiro_spero
    Олимпиадная задача она на то и олимпиадная... Догадаться надо.
    Не знаю как сейчас в программировании, а в математике решение олимпиадной задачи начинается обычно со слов: "...заметим, что...". А если это не заметить - и не иметь математического кругозора, чтобы понимать что замечать - то... упс.
    Ответ написан
    Комментировать
  • Коэффициенты для бикубической (bicubic) интерполяции задаются функцией "x ^ (1 / 3)"?

    @Dum_spiro_spero
    Интерполяция сплайнами как раз очень простая и напрашивающаяся.
    Интересно какой у вас алгоритм интерполяции.
    Из картинки непонятно, код тоже не надо - просто опишите идею алгоритма.
    Ответ написан
    9 комментариев
  • Кто может объяснить теорию музыки языком программирования?

    @Dum_spiro_spero
    Все просто. Главное - оно все относительно.
    Пусть звучит какая-то частота. Увеличим в два раза - получившийся интервал будет звучат вполне так благозвучно - называется "октава". И пусть это 100 и 200 Гц, или 1000 и 2000 - все равно ощущение от интервала будет одинаковое. Теперь разобьем этот интервал внутри - так чтобы разные интервалы звучали одинаково относительно разных частот - и тут помогает РАВНОМЕРНАЯ ТЕМПЕРАЦИЯ. Если интервал поделить отрезками отличающимися по частоте в корень 12-й степени из двух - то мы получим то что надо. В европейской музыке нот на самом деле не 7, а 12 - включая диезы и бемоли. НО! Психоакустика вещь такая... лучше всего звучат простые интервалы - типа 2/3, 3/4 (октава это 1/2) по частоте - и эти наши корни близки к чистым интервалам - но... не совсем. "Равномерно темперированный строй" вещь сравнительно недавняя - до него были разные ЛАДЫ - т.е. системы организации нот и частот - и в разных ладах одной ноте будут соответствовать разные частоты.
    https://ru.wikipedia.org/wiki/Равномерно_темпериро...
    начинаем читать отсюда - ну дальше про натуральный строй, и т.п...
    То что Ля=440Герц - тоже не всегда так было. Бывали времена когда Ля доползала до 460 Гц. А сейчас наконец договорились все.
    Ответ написан
    7 комментариев
  • Польза олимпиадного программирования, миф или реальность?

    @Dum_spiro_spero
    Польза олимпиадного программирования в том, что вы а) способны находить нестандартные решения б) не боитесь их применять. Второй аспект может кстати быть минусом. Например вы придумали гениальный, алгоритм чего-то - виртуозно использовали знание недокументированных особенностей любимого языка, операционной системы, и т.п... А потом приходит начальник и говорит - концепция поменялась - кроме этого - нужна еще поддержка Windows 3.1 - у них там на буровой установке оказывается встроенные компы 80-х годов. Ну просто же - перекомпилируйте под ней проект и все. И вы понимаете, что с начала надо делать абсолютно всё.
    Второй момент - многие алгоритмы изложенные в книгах 70-80-х годов на сегодня уже устарели - правда это я скорее про численно решение дифуров, про графы и сортировки не знаю.
    В общем как сказал vilgeforce - чем заниматься-то будете? Если еще не знаете - то конечно лучше вширь чем вглубь. Лучше знать, что алгоритмы чего-то там существуют, ведут себя примерно так и у них такие плюсы и такие минусы - чем не знать про них вообще и хлопать глазами при общении с начальником.
    Ответ написан
    Комментировать
  • Как развить мышление для программирования?

    @Dum_spiro_spero
    На мой взгляд математика и программирование связаны мало.
    Еще в школе (ну да, физматшколе) у моего друга с математикой было не хуже чем у меня, а с программированием - никак. Школьная и институтская математика - увы - учат решать стандартные задачи стандартными методами.
    Создание же даже просто алгоритма - это процесс творческий.
    Ну на самом деле - в программировании же понятийных сущностей мало - переменные, ввод-вывод, циклы, функции, С++ как приятный бонус вкупе с RAD.
    Если взять типичную программу - решение квадратного уравнение - то даже тут встретятся моменты творчества.
    Как назвать переменные? Коэффициенты вводит пользователь или они жестко заданы? После окончания программы - всё, стоп или решаем еще одно? А если подсунули линейное уравнение, а не квадратное - как быть? А если уравнение задано в виде строки вида "2x^2+3x-10=0" - может такое решим?
    Ну и так далее.
    А какие-нибудь крестики-нолики запрограммировать - надо еще больше таких вопросов решить.
    А математика как таковая вообще мало нужна - если нужно запрограммировать как спутник летит - то почитаете книжки по численным методам благо их нынче вагон - с точки зрения программирования - там все гиперпросто.
    Как правило это программы вида считать данные, долго считать по сложным формулам, вывести результаты.
    Да, есть некоторое количество знаний которое надо знать - типа что такое указатель и как он хранится, что не нежелательно сравнить переменную типа float с нулем, как хранятся массивы, и т.п.. ну это все в книжках по программированию есть.
    Моя идея такая - старайтесь одну и ту же задачу по программированию решить РАЗНЫМИ способами - ну или обдумать хотя бы разные подходы.
    О себе - с первого курса института работал в программисткой фирме. Пишу на С/С++ в его разных ипостасях, новомодных штучек типа Питона не знаю.
    Ответ написан
    6 комментариев