Блог пользователя arrch

Автор arrch, история, 9 лет назад, По-русски

Ребят, посоветуйте ресурсы/книги для изучения алгоритмов, которые нужно знать любому уважающему себя кодефорсеру. Заранее спасибо.

  • Проголосовать: нравится
  • 0
  • Проголосовать: не нравится

»
9 лет назад, # |
  Проголосовать: нравится +6 Проголосовать: не нравится

Почитай emaxx

  • »
    »
    9 лет назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    Спасибо, большое :)

    • »
      »
      »
      9 лет назад, # ^ |
        Проголосовать: нравится 0 Проголосовать: не нравится

      Этого, в принципе, достаточно :) . Дальше нарабатывать практику, решая большое количество задач.

      Когда "набьешь руку", посоветовал бы изучить архивы IMO(международной математической олимпиады). Там есть много нестандартных идей, многие из которых были позднее использованы для некоторых узких алгоритмов, а сами задачи легли в идеи многих сложных задач на контестах.

      • »
        »
        »
        »
        9 лет назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится

        Спасибо, за совет. И хотелось бы узнать, чтобы Вы посоветовали почитать школьнику, для поднятия математического бэкграунда?

        • »
          »
          »
          »
          »
          9 лет назад, # ^ |
          Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

          Фиг его знает, если честно. Я обычно следовал такому правилу: встречаю что-то непонятное — загугливаю. Обычно в википедии какой-то ответ находится. Если этого не достаточно — ищу какие-то книги или статьи(pdf или djvu файлы). "Книжки для чайников" хорошей не знаю. А весь тот математический объем, который необходим, в одну книжку или даже в одну серию не поместишь.

          Могу для ознакомления посоветовать следующие книги 1) Кормен "Алгоритмы: построение и анализ" 2) Кнут, Грехем, Поташник "Конкретная математика". Но, опять-таки, книги далеко не всеобъемлющие. Скорее, они содержат некоторые интересные факты, методы решения, нестандартные подходы.

          А лучше — не забивай голову. В ней, конечно, помещается очень большой объем информации, но запихивать эту информацию туда лучше постепенно, сразу ее переваривая. Лучше изучи каждый алгоритм вплоть до основания, разбери его по косточкам, впитай каждую интересную идею, которая возникает в процессе построения алгоритма или доказательства его правильности. Куда полезнее прочитать одну книгу, разобрав ее до основания, чем сотню, не разобравшись толком ни в одной.