Работоспособность Codeforces может быть ограничена с 18 июня, 22:00 (МСК) по 19 июня, 6:00 (МСК) в связи с проведением технических работ. Polygon будет работать в обычном режиме. ×

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

Автор KAP, 10 лет назад, По-русски

Так сложилось, что в 2008­-2009 годах я написал несколько довольно объемных текстов на разные темы алгоритмического программирования. Писал я их в то время для некоторой группы нижегородских школьников, но с тех пор некоторые из этих текстов я довольно широко распространял, последнее время явно в них указывая лицензию CC-BY-SA.

Теперь я решил выложить эти тексты на github, чтобы а) сделать их распространение еще более широким, но при этом более упорядоченным; б) чтобы желающим было бы проще исправлять ошибки и опечатки, коих там достаточно.

Итак:

https://github.com/petr-kalinin/progtexts

или, если вам интересуют только pdf, а не LaTeX-исходники, то

https://github.com/petr-kalinin/progtexts/releases/latest

Темы текстов (кружочком помечены те, которые получили довольно широкое распространение):

    • Перебор с возвратом
  1. Сложность алгоритмов, O-нотация
  2. Различные мелкие алгоритмические идеи, а также около-программистские замечания
    • Поиск в глубину
    • Динамическое программирование

Тексты, конечно, подразумевают некоторый начальный уровень знаний. Если за шкалу «уровней знаний» для удобства принять параллели ЛКШ, то тексты ориентированы примерно на уровень начиная с «чуть старше параллели C» и до параллели A'.

Сразу предупреждаю (disclaimer), основной текст писался 5-6 лет назад, поэтому местами могут быть устаревшие фрагменты. Вообще, там было довольно много упоминаний Borland Pascal, я вроде постарался при подготовке к публикации их все убрать, но, возможно, что-то я пропустил. Кроме того, там могут быть и разные другие проблемы и даже где-нибудь может быть написана полная ерунда — я особенно внимательно тексты давно не перечитывал. Сообщайте о таком.

Если тексты вас заинтересуют, и будут комментарии, замечания, ошибки — пишите или (даже лучше!) предлагайте pull-request'ы.

Лицензия на pdf-ки — CC-BY-SA. На TeX-код пока не знаю, какая лицензия; подскажите, какую лицензию лучше использовать?

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

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

Github показывает, что не знает такой кодировки (пример). Может быть, заодно стоит перевести исходники на UTF-8?

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

    Хм, да, действительно. Правда ли, что это существенно — т.е. что просмотр через интерфейс гитхаба реально требуется?

    Видимо, постараюсь перевести в utf-8.

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

      Лично мне гораздо проще посмотреть исходник TEX-файла (несколько кликов в гитхабе), чем скачать и разобраться, как его скомпилировать (как минимум несколько минут). При этом у меня есть некоторый опыт компиляции TEX-файлов.

      Для тех, кому просто хочется увидеть текст, был бы полезен PDF или хотя бы читаемый исходник.

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

        Вроде pdf там как раз вполне доступны (в разделе releases), и в посте, и в readme на главной странице гитхаба про это сказано...

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

          Да, это я протупил, теперь вижу их.

          Тогда из аргументов остаётся самоценность жизни с UTF-8.

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

            Вроде даже перевел все в utf-8.

            На самом деле, мне далеко не очевидна самоценность utf-8, особенно для TeX'а, где нет проблемы спецсимволов. Но с другой стороны, да, веб-интерфейс github'а, подозреваю, весьма удобная вещь (хотя сам большого опыта не имею).

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

              Современный софт или сервис с большей вероятностью поддерживает одну кодировку UTF-8, чем десятки отдельных кодировок для различных языков. Например, тот же Github.

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

        Но у тебя при этом есть и некоторый опыт чтения теховских исходников.