Участник:Shersh/Тикеты к 4ому терму — различия между версиями
Shersh (обсуждение | вклад) м (→2. Поиск подстроки в строке) |
Shersh (обсуждение | вклад) м (Изменён уровень защиты страницы «Участник:Shersh/Тикеты к 4ому терму» ([edit=autoconfirmed] (бессрочно) [move=autoconfirmed] (бессрочно))) |
||
(не показано 99 промежуточных версий этого же участника) | |||
Строка 6: | Строка 6: | ||
# [[Основные определения, связанные со строками]] | # [[Основные определения, связанные со строками]] | ||
# [[Период и бордер, их связь]] | # [[Период и бордер, их связь]] | ||
− | # '' | + | # ''fixed'' [[Слово Фибоначчи]] (''2'') |
## Убрать лишние пункты | ## Убрать лишние пункты | ||
## Англоязычные термины | ## Англоязычные термины | ||
Строка 14: | Строка 14: | ||
## Написать, почему строка Фибоначчи будет (2, 4) исключением | ## Написать, почему строка Фибоначчи будет (2, 4) исключением | ||
## Можно написать про исключения отдельный конспект даже, если там много информации наберётся | ## Можно написать про исключения отдельный конспект даже, если там много информации наберётся | ||
− | # ''' | + | # '''fixed''' [[Слово Туэ-Морса]] (''5'') |
− | |||
## Англоязычные термины | ## Англоязычные термины | ||
## Правильно оформить См. также и Источники информации | ## Правильно оформить См. также и Источники информации | ||
− | ## Доказать | + | ## Доказать какой-нибудь нетривиальный факт про строку Туэ-Морса |
# [[Декомпозиция Линдона]] | # [[Декомпозиция Линдона]] | ||
# [[Алгоритм Ландау-Шмидта]] | # [[Алгоритм Ландау-Шмидта]] | ||
− | # ''' | + | # '''взяли''' [[Алгоритм Крочемора]] (''5'') |
## Пояснить наивную реализацию в начале | ## Пояснить наивную реализацию в начале | ||
## Доказать первую лемму | ## Доказать первую лемму | ||
## Удалить Лоренца из источников | ## Удалить Лоренца из источников | ||
## Пояснить подробней псевдокод | ## Пояснить подробней псевдокод | ||
+ | ## Взять кортежи в тех и оформить красиво | ||
+ | # [[Алгоритм Мейна-Лоренца]] | ||
== 2. Поиск подстроки в строке == | == 2. Поиск подстроки в строке == | ||
− | : 0. | + | : 0. [[Поиск подстроки в строке]] |
− | + | === Точный поиск === | |
− | + | # [[Наивный алгоритм поиска подстроки в строке]] | |
− | # | + | # [[Поиск подстроки в строке с использованием хеширования. Алгоритм Рабина-Карпа]] |
− | + | # [[Поиск наибольшей общей подстроки двух строк с использованием хеширования]] | |
− | + | # [[Префикс-функция]] | |
− | |||
− | |||
− | # | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | # | ||
− | |||
− | |||
− | |||
− | |||
− | # [[Префикс-функция]] | ||
− | |||
# [[Алгоритм Кнута-Морриса-Пратта]] | # [[Алгоритм Кнута-Морриса-Пратта]] | ||
− | # [[ | + | # [[Автомат Кнута-Морриса-Пратта]] |
− | + | # [[Z-функция]] | |
− | + | # '''fixed''' [[Бор]] (''8'') | |
− | |||
− | |||
− | |||
− | |||
− | # | ||
− | |||
− | |||
− | |||
− | |||
− | # ''' | ||
− | |||
− | |||
## Больше ссылок | ## Больше ссылок | ||
## Кое-где надо подправить tex | ## Кое-где надо подправить tex | ||
Строка 73: | Строка 47: | ||
## Расказать немного про использование бора в качестве Map и дать оценку на оптимальность при известных запросах | ## Расказать немного про использование бора в качестве Map и дать оценку на оптимальность при известных запросах | ||
## Добавить см. также, оформить правильно источники информации | ## Добавить см. также, оформить правильно источники информации | ||
− | # ''' | + | ## Категория |
+ | # '''fixed''' [[Алгоритм Ахо-Корасик]] (''8'') | ||
## Задачу в шаблон | ## Задачу в шаблон | ||
## Написать асимптотику нормально | ## Написать асимптотику нормально | ||
Строка 81: | Строка 56: | ||
## Источники заменить на источники информации | ## Источники заменить на источники информации | ||
## Отформатировать раздел с масками | ## Отформатировать раздел с масками | ||
− | # [[Алгоритм Ландау-Вишкина (k несовпадений)]] | + | ## Категория |
+ | # ''fixed'' [[Алгоритм Бойера-Мура]] (''4'') | ||
+ | ## Добавить '''понятную''' табличку примера с пояснением каждого шага | ||
+ | ## and в Tex заменить на знак конъюнкции | ||
+ | ## Добавить пояснений в формальные определения | ||
+ | ## Ссылки заменить на источники информации | ||
+ | ## Категория | ||
+ | ## Отформатировать псевдокод | ||
+ | # [[Алгоритм Колусси]] | ||
+ | # [[Алгоритм Shift-And]] | ||
+ | # ''fixed'' [[Двусторонний алгоритм]] (0.5) | ||
+ | ## Список с большой буквы начать | ||
+ | ## Неправильный порядок разделов в конце конспекта | ||
+ | ## Стрелки в псевдокоде заменить на = | ||
+ | |||
+ | === Нечёткий поиск === | ||
+ | <ol> | ||
+ | <li value=15> [[Алгоритм Ландау-Вишкина (k несовпадений)]] </li> | ||
+ | <li> [[Алгоритм Ландау-Вишкина (k различий)]] </li> | ||
+ | </ol> | ||
== 3. Суффиксное дерево == | == 3. Суффиксное дерево == | ||
− | # | + | # [[Суффиксный бор]] |
− | + | # ''fixed'' [[Сжатое суффиксное дерево]] (''2'') | |
− | |||
− | |||
− | |||
− | |||
− | |||
## Немного пояснить про эквивалентность определений сжатого суффиксного бора и сжатого дерева, а то путаница какая-то сейчас | ## Немного пояснить про эквивалентность определений сжатого суффиксного бора и сжатого дерева, а то путаница какая-то сейчас | ||
## Англоязычные термины | ## Англоязычные термины | ||
Строка 97: | Строка 86: | ||
## Свойства написать с маленькой буквы и перечислить через запятую | ## Свойства написать с маленькой буквы и перечислить через запятую | ||
## Добавить псевдокод структуры Vertex перед построением | ## Добавить псевдокод структуры Vertex перед построением | ||
− | # | + | # [[Алгоритм Укконена]] |
− | + | # [[Алгоритм МакКрейта]] | |
− | + | # ''fixed'' [[Алгоритм Фарача]] (''2'') | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | # | ||
− | |||
− | |||
− | # '' | ||
## В конспекте полно опечаток - исправить | ## В конспекте полно опечаток - исправить | ||
## Интервики на поразрядную сортировку | ## Интервики на поразрядную сортировку | ||
Строка 118: | Строка 95: | ||
== 4. Суффиксный массив == | == 4. Суффиксный массив == | ||
− | # | + | # [[Суффиксный массив]] |
− | + | # [[Построение суффиксного массива с помощью стандартных методов сортировки]] | |
− | + | # [[Алгоритм цифровой сортировки суффиксов циклической строки]] | |
− | + | # ''fixed'' [[Алгоритм Касаи и др.]] (''3'') | |
− | |||
− | # | ||
− | |||
− | |||
− | # | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | # '' | ||
## Кажется, что LCP вычисляет не длину общих префиксов циклических сдвигов; или надо что-то ещё добавить | ## Кажется, что LCP вычисляет не длину общих префиксов циклических сдвигов; или надо что-то ещё добавить | ||
## "будем использовать промежуточный массив " — лучше написать "вспомогательный" | ## "будем использовать промежуточный массив " — лучше написать "вспомогательный" | ||
Строка 142: | Строка 105: | ||
## Надо сказать, в каком порядке мы фиксируем соседа: lcp[i] содержит префикс i и i-1 или i и i+1 | ## Надо сказать, в каком порядке мы фиксируем соседа: lcp[i] содержит префикс i и i-1 или i и i+1 | ||
## Думаю, что к утверждению 2 нужные пояснения, а то происходят нетривиальные переходы из словесной формулировки в утверждение; ещё надо добавить, что не изменится относительный порядок именно этих двух суффиксов, а не всех | ## Думаю, что к утверждению 2 нужные пояснения, а то происходят нетривиальные переходы из словесной формулировки в утверждение; ещё надо добавить, что не изменится относительный порядок именно этих двух суффиксов, а не всех | ||
− | # | + | # [[Алгоритм Карккайнена-Сандерса]] |
− | + | # '''fixed''' [[Алгоритм поиска подстроки в строке с помощью суффиксного массива]] (''7'') | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | # ''' | ||
## Отформатировать псевдокоды | ## Отформатировать псевдокоды | ||
## Разобраться в алгоритмах и написать нормальное описание: там встречаются баги | ## Разобраться в алгоритмах и написать нормальное описание: там встречаются баги | ||
Строка 157: | Строка 113: | ||
== 5. Задача о наименьшем общем предке == | == 5. Задача о наименьшем общем предке == | ||
− | # | + | # [[Сведение задачи LCA к задаче RMQ]] |
− | + | # [[Сведение задачи RMQ к задаче LCA]] | |
− | + | # [[Метод двоичного подъема]] | |
− | + | # [[Решение RMQ с помощью разреженной таблицы]] | |
− | + | # ''fixed'' [[Алгоритм Фарака-Колтона и Бендера]] (''2'') | |
− | + | ## Отформатировать псевдокод | |
− | |||
− | # | ||
− | |||
− | |||
− | |||
− | # | ||
− | |||
− | |||
− | # | ||
− | |||
− | |||
− | |||
− | |||
− | # '' | ||
− | ## | ||
− | |||
− | |||
− | |||
## Увеличить дроби | ## Увеличить дроби | ||
− | + | # '''!!!''' [[Heavy-light декомпозиция]] (''6'') | |
− | + | ## "решается с помощью heavy-light декомпозиции" — может быть решена | |
− | + | ## "Пусть A, B - ко" — дефисы нужно заменить на тире | |
− | + | ## В начале у тебя идут вершины a,b и A,B, а потом u,v и a,b. Надо сделать единообразно, чтобы начало конспекта и его конец согласовывались. Например, сделать корни путей большими буквами — норм. Тогда можно либо a,b и A,B, либо u,v и U,V. | |
− | + | ## "В данном случае корень одного из путей является вершиной другого." — а почему пути не могут пересекаться крест-на-крест? | |
− | ## | + | ## Слишком много повтором «Пусть» в доказательстве леммы. |
− | ## | + | ## "Но LCA должен принадлежать двум путям. Но" — дублирование «Но» |
− | ## | + | ## "Предположим, что LCA не равны" — криво написано, нужно формально исходя из формулировки |
− | ## | + | ## Ну и вообще, как будто слов пожадничал на лемму и кое-как написал |
− | ## | + | ## "Построим декомпозицию." — декомпозицию чего и для чего? Очень плохо оставлять открытый контекст, особенно в начале пункта. Лучше чуть более подробно описать, чтобы было понятно |
− | ## | + | ## "Корень пути, на котором лежит текущая вершина. |
− | ## | + | Из всех путей выбираем тот, чья начальная вершина наиболее удалена от корня дерева." — вообще непонятно, как связано то, что мы хотим сохранить с тем, что написано потом. Нет предложения-связки |
− | ## | + | ## "Пусть требуется" — опять пуст |
− | # '' | + | ## "Пусть на данной итерации" — как будто других слов нет |
+ | ## "LCA будет та" — это не по-русски | ||
+ | ## Возьми LCA в тексте везде в \mathrm | ||
+ | ## "Потому что бесконечно большое количество путей" — откуда в конечном дереве взялось бесконечно большое число путей? | ||
+ | # ''fixed'' [[Алгоритм Шибера-Вишкина]] (''3'') | ||
## Англоязычные термины | ## Англоязычные термины | ||
## Интервики на LCA | ## Интервики на LCA | ||
Строка 206: | Строка 148: | ||
## Правильно оформить источники информации | ## Правильно оформить источники информации | ||
# [[Алгоритм Тарьяна поиска LCA за O(1) в оффлайн]] | # [[Алгоритм Тарьяна поиска LCA за O(1) в оффлайн]] | ||
− | # [[Link-Cut Tree]] | + | # '''fixed''' [[Link-Cut Tree]] (5) |
+ | ## Отформатировать псевдокоды | ||
+ | ## Написать более понятное введение и пояснить подробней остальные смутные операции | ||
+ | ## Список оформлен некрасиво в начале | ||
+ | ## Категории | ||
+ | ## Оформить правильно См. также и Источники информации | ||
== 6. Матроиды == | == 6. Матроиды == | ||
=== Основные факты теории матроидов === | === Основные факты теории матроидов === | ||
# [[Определение матроида]] | # [[Определение матроида]] | ||
− | # [[Примеры матроидов]] | + | # [[Примеры матроидов]] |
− | |||
− | |||
− | |||
# [[Прямая сумма матроидов]] | # [[Прямая сумма матроидов]] | ||
# [[Теорема Радо-Эдмондса (жадный алгоритм)]] | # [[Теорема Радо-Эдмондса (жадный алгоритм)]] | ||
− | # | + | # [[Теорема о базах]] |
− | + | # [[Аксиоматизация матроида базами]] | |
− | |||
− | |||
− | |||
− | |||
− | # [[Аксиоматизация матроида базами]] | ||
− | |||
− | |||
− | |||
# [[Теорема о циклах]] | # [[Теорема о циклах]] | ||
# [[Аксиоматизация матроида циклами]] | # [[Аксиоматизация матроида циклами]] | ||
− | # | + | # [[Ранговая функция, полумодулярность]] |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
# [[Двойственный матроид]] | # [[Двойственный матроид]] | ||
# [[Оператор замыкания для матроидов]] | # [[Оператор замыкания для матроидов]] | ||
− | # | + | # [[Покрытия, закрытые множества]] |
− | |||
# [[Матроид Вамоса]] | # [[Матроид Вамоса]] | ||
=== Пересечение матроидов === | === Пересечение матроидов === | ||
<ol> | <ol> | ||
− | <li value="14"> | + | <li value="14"> [[Пересечение матроидов, определение, примеры]] </li> |
− | + | <li> '''взяли''' [[Лемма о паросочетании в графе замен]] (''5'') </li> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | <li> ''' | ||
# Док-во по индукции оформить красиво | # Док-во по индукции оформить красиво | ||
# Исправить док-во: неверный переход | # Исправить док-во: неверный переход | ||
# Заменить xor на треугольник | # Заменить xor на треугольник | ||
# Добавить категорию | # Добавить категорию | ||
− | <li> [[Лемма о единственном паросочетании в графе замен]] (''0. | + | <li> ''fixed'' [[Лемма о единственном паросочетании в графе замен]] (''0.5'') </li> |
# Оформить правильно источники информации | # Оформить правильно источники информации | ||
# Добавить категорию | # Добавить категорию | ||
− | <li> '' | + | # Категория |
+ | # Оформить красиво док-во по индукции | ||
+ | <li> ''fixed'' [[Граф замен для двух матроидов]] (''3'') </li> | ||
# Нарисовать нормальную картинку | # Нарисовать нормальную картинку | ||
# Добавить информацию про граф замен для одного матроида | # Добавить информацию про граф замен для одного матроида | ||
Строка 267: | Строка 191: | ||
# Оформиь правильно источники информации | # Оформиь правильно источники информации | ||
# Добавить категорию | # Добавить категорию | ||
− | <li> [[Лемма о единственном паросочетании в подграфе замен, индуцированном кратчайшим путем]] | + | <li> [[Лемма о единственном паросочетании в подграфе замен, индуцированном кратчайшим путем]] </li> |
− | + | <li> [[Алгоритм построения базы в пересечении матроидов]] </li> | |
− | |||
− | |||
− | <li> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
</ol> | </ol> | ||
=== Объединение матроидов === | === Объединение матроидов === | ||
<ol> | <ol> | ||
− | <li value="21"> ''' | + | <li value="21"> '''fixed''' [[Объединение матроидов, проверка множества на независимость]] (''8'') </li> |
# Добавить формальное определение | # Добавить формальное определение | ||
# Структурировать конспект, а не оставлять просто набором тезисов | # Структурировать конспект, а не оставлять просто набором тезисов | ||
Строка 296: | Строка 205: | ||
# Добавить содержательный примеры | # Добавить содержательный примеры | ||
# Заменить тире на [[Шаблон:---]] | # Заменить тире на [[Шаблон:---]] | ||
− | + | <li> ''взяли'' [[Объединение матроидов, доказательство того, что объединение является матроидом]] (1) </li> | |
− | <li> [[Объединение матроидов, доказательство того, что объединение является матроидом]] </li> | ||
# Добавить категории | # Добавить категории | ||
# Добавить интервики | # Добавить интервики | ||
− | <li> ''' | + | # Отформатировать по правилам |
+ | # Помёрджить с предыдущим конспектом | ||
+ | <li> '''взяли''' [[Алгоритм построения базы в объединении матроидов]] (''7'') </li> | ||
# В определение само определение выделить жирным | # В определение само определение выделить жирным | ||
# Тире заменить на [[Шаблон:---]] | # Тире заменить на [[Шаблон:---]] | ||
Строка 309: | Строка 219: | ||
== 7. Теория расписаний == | == 7. Теория расписаний == | ||
− | + | === Общая теория === | |
− | # | + | # [[Классификация задач]] |
− | + | # '''fixed''' [[Методы решения задач теории расписаний]] (''5'') | |
− | |||
− | |||
− | # ''' | ||
− | |||
− | |||
− | |||
− | |||
− | |||
## Как-нибудь структурировать конспект, а то много всего рандомного написано | ## Как-нибудь структурировать конспект, а то много всего рандомного написано | ||
## Ссылки оформить как интервики | ## Ссылки оформить как интервики | ||
− | ## Оставить только совсем | + | ## Оставить только совсем мелкие доказательства, на наборы задач кинуть ссылки или создать новые конспекты |
## Добавить источники информации | ## Добавить источники информации | ||
− | # | + | ## Разнести на отдельные конспекты с доказательством, если такой задачи нет, или оформить как основную статью с ссылкой на оригинал, приведя обзорное решение |
− | + | # [[Правило Лаулера]] | |
− | + | ||
− | + | === Задачи с одним станком === | |
− | + | <ol> | |
− | + | <li value=4> ''взяли'' [[P1sumu|<tex>1 \mid \mid \sum U_{i}</tex>]] (''1.5'') </li> | |
− | + | # Переименовать конспект и оставить перенаправление | |
− | ## Задачу в шаблон | + | # Задачу в шаблон |
− | + | # Отформатировать псевдокод | |
− | + | # Добавить категории | |
− | + | # Заменить литературу на источники информации | |
− | + | <li> [[1ripi1sumwc|<tex>1 \mid r_{i}, p_i=1\mid \sum w_{i}C_{i}</tex>]]</li> | |
− | # | + | <li> '''fixed''' [[1ridipi1|<tex>1 \mid r_{i}, d_{i}, p_{i} = 1 \mid -</tex>]] (''8'') </li> |
− | + | # Начать с простейших примеров, когда только d_i, потом усложнять | |
− | + | # Отформатировать псевдокод | |
− | ## Добавить | + | # Оформить правильно источники информации |
− | + | # Добавить категории | |
− | + | <li> [[1ripipsumwu|<tex> 1 \mid r_i,p_i=p \mid \sum w_i U_i</tex>]]</li> | |
− | + | <li> [[1outtreesumwc | <tex>1 \mid outtree \mid \sum w_i C_i</tex>]]</li> | |
− | + | <li> ''fixed'' [[1pi1sumwu|<tex>1 \mid p_{i} = 1 \mid \sum w_{i}U_{i}</tex>]] (''3'') </li> | |
− | + | # Более простой аналог задачи рассмотреть (только с U_i) | |
− | + | # Отформатировать псевдокод | |
− | + | # Заменить литературу на источники информации | |
− | + | <li> '''fixed''' [[1precpmtnrifmax|<tex>1 \mid prec, pmtn, r_i \mid f_{\max}</tex>]] (''7'') </li> | |
− | + | # Задачу в шаблон | |
− | + | # Отформатировать псевдокоды | |
− | + | # Более подробное и понятное описание, чтобы было понятно, как закодить | |
− | + | # Увеличить дроби | |
− | + | <li> [[1precripi1Lmax|<tex>1 \mid prec; r_i; p_i = 1 \mid L_{max}</tex>]]</li> | |
− | + | </ol> | |
− | + | ||
− | + | === Специальные случаи задач для двух станков === | |
− | + | <ol> | |
− | + | <li value=12> ''fixed'' [[P2precpi1Lmax|<tex>P2 \mid prec, p_i = 1 \mid L_{\max}</tex>]] (''2'') </li> | |
− | + | # Увеличить дроби | |
− | # [[ | + | # Оформить правильно источники информации |
− | ## | + | # Добавить категории |
− | ## Добавить категории | + | # Заменить знаки неравенств |
− | + | # Взять задачу в шаблон, пункт описание не нужен | |
− | + | # Добавить нотацию задачи в начало | |
− | + | <li>'''fixed''' [[R2Cmax|<tex>R2 \mid \mid C_{max}</tex>]] (''5'') </li> | |
− | + | # Допилить | |
− | ## | + | # Доказать корректность |
− | + | # Задачу в шаблон | |
− | + | # Отформатировать псевдокод | |
− | + | # Добавить категории | |
− | ## | + | <li> ''fixed'' [[F2Cmax|<tex>F2 \mid \mid C_{max}</tex>]] (''3'') </li> |
− | # [[ | + | # Задачу в шаблон |
− | + | # Заменить знаки неравенств | |
− | + | # Отформатировать псевдокод | |
− | + | # Красивые картинки | |
− | ## | + | <li> ''fixed'' [[O2Cmax|<tex>O2 \mid \mid C_{max}</tex>]] (''1'') </li> |
− | # ''' | + | # Заменить знаки неравенств |
− | # | + | # Категории |
− | + | # задачу в шаблон | |
− | + | # Отформатировать псевдокод | |
− | + | <li> ''fixed'' [[J2ni2Cmax|<tex>J2 \mid n_{i} \le 2 \mid C_{max}</tex>]] (''1'') </li> | |
− | + | # Задачу в шаблон | |
− | + | # Знаки неравенств | |
− | + | # Источники информации | |
− | + | # Дефисы на тире | |
− | + | # Исправить теховское обозначение задачи | |
− | + | <li> '''fixed''' [[J2pij1Lmax| <tex>J2\mid p_{ij} = 1\mid L_{max}</tex>]] (10) </li> | |
− | + | # Доделать | |
− | + | </ol> | |
− | + | ||
− | + | === Задачи для произвольного числа станков === | |
− | + | <ol> | |
− | + | <li value=18> ''fixed'' [[Flow shop]] (''2'') </li> | |
− | + | # Таблички оформить как викитаблички, а не как код | |
− | + | # Битое примечание | |
− | + | # Отформатировать псевдокоды | |
− | + | # Добавить категории | |
− | + | <li> [[Fpij1sumwu|<tex>F \mid p_{ij} = 1 \mid \sum w_i U_i</tex>]] </li> | |
− | + | <li> [[PpmtnriLmax|<tex>P \mid pmtn, r_i \mid L_{max}</tex>]] </li> | |
− | + | <li> ''fixed'' [[QpmtnCmax|<tex>Q \mid pmtn \mid C_{max}</tex>]] (''3'')</li> | |
− | # | + | # Задачу в шаблон |
− | # | + | # Отформатировать псевдокоды |
− | # | + | # Заменить знаки неравенств |
− | # [[ | + | # Кажется, тут не совсем правильно написано решение; вчитаться, пофиксить все баги и написать понятней |
− | + | <li> ''fixed'' [[QpmtnriLmax|<tex>Q \mid pmtn, r_{i} \mid L_{max}</tex>]] (''0.5'') </li> | |
− | # | + | # Задачу в шаблон |
− | # | + | # Заменить знаки неравенств |
− | + | # Добавить информации в источники | |
− | + | <li> [[QSumCi|<tex>Q\mid\mid\sum{C_i}</tex>]] </li> | |
− | ## | + | <li> ''fixed'' [[Opi1sumu|<tex>O \mid p_{ij} = 1 \mid \sum U_i</tex>]] (''0.5'') </li> |
+ | # Категории | ||
+ | # Шаблон | ||
+ | # Знаки неравенств | ||
+ | </ol> |
Текущая версия на 19:15, 23 февраля 2017
Тикеты нумеруются как "X-Y", где X — номер темы, а Y — номер тикета внутри темы.
Помним про добавление англоязычных терминов в конспекты.
Содержание
1. Основные определения. Простые комбинаторные свойства слов
- Основные определения, связанные со строками
- Период и бордер, их связь
- fixed Слово Фибоначчи (2)
- Убрать лишние пункты
- Англоязычные термины
- Все переменные в Tex
- Исправить знаки неравенств
- Правильно оформить См. также и Источники информации
- Написать, почему строка Фибоначчи будет (2, 4) исключением
- Можно написать про исключения отдельный конспект даже, если там много информации наберётся
- fixed Слово Туэ-Морса (5)
- Англоязычные термины
- Правильно оформить См. также и Источники информации
- Доказать какой-нибудь нетривиальный факт про строку Туэ-Морса
- Декомпозиция Линдона
- Алгоритм Ландау-Шмидта
- взяли Алгоритм Крочемора (5)
- Пояснить наивную реализацию в начале
- Доказать первую лемму
- Удалить Лоренца из источников
- Пояснить подробней псевдокод
- Взять кортежи в тех и оформить красиво
- Алгоритм Мейна-Лоренца
2. Поиск подстроки в строке
Точный поиск
- Наивный алгоритм поиска подстроки в строке
- Поиск подстроки в строке с использованием хеширования. Алгоритм Рабина-Карпа
- Поиск наибольшей общей подстроки двух строк с использованием хеширования
- Префикс-функция
- Алгоритм Кнута-Морриса-Пратта
- Автомат Кнута-Морриса-Пратта
- Z-функция
- fixed Бор (8)
- Больше ссылок
- Кое-где надо подправить tex
- Нарисовать нормальные картинки
- Построение оформить эстетично по шагам
- Добавить ссылки на суффиксный бор, провести связь с суффиксным деревом
- Добавить информацию про использование дерева для хранения переходов
- Расказать немного про использование бора в качестве Map и дать оценку на оптимальность при известных запросах
- Добавить см. также, оформить правильно источники информации
- Категория
- fixed Алгоритм Ахо-Корасик (8)
- Задачу в шаблон
- Написать асимптотику нормально
- Другие способы ускорения алгоритма или оптимизаций по памяти. Лучше уточнить у куратора
- Красивые картинки
- Отформатировать псевдокод
- Источники заменить на источники информации
- Отформатировать раздел с масками
- Категория
- fixed Алгоритм Бойера-Мура (4)
- Добавить понятную табличку примера с пояснением каждого шага
- and в Tex заменить на знак конъюнкции
- Добавить пояснений в формальные определения
- Ссылки заменить на источники информации
- Категория
- Отформатировать псевдокод
- Алгоритм Колусси
- Алгоритм Shift-And
- fixed Двусторонний алгоритм (0.5)
- Список с большой буквы начать
- Неправильный порядок разделов в конце конспекта
- Стрелки в псевдокоде заменить на =
Нечёткий поиск
3. Суффиксное дерево
- Суффиксный бор
- fixed Сжатое суффиксное дерево (2)
- Немного пояснить про эквивалентность определений сжатого суффиксного бора и сжатого дерева, а то путаница какая-то сейчас
- Англоязычные термины
- Сделать список нормальный в доказательстве
- Отформатировать псевдокод в построении
- Свойства написать с маленькой буквы и перечислить через запятую
- Добавить псевдокод структуры Vertex перед построением
- Алгоритм Укконена
- Алгоритм МакКрейта
- fixed Алгоритм Фарача (2)
- В конспекте полно опечаток - исправить
- Интервики на поразрядную сортировку
- Рисунки подписать в thumb
- Добавить недостатки и преимущества
4. Суффиксный массив
- Суффиксный массив
- Построение суффиксного массива с помощью стандартных методов сортировки
- Алгоритм цифровой сортировки суффиксов циклической строки
- fixed Алгоритм Касаи и др. (3)
- Кажется, что LCP вычисляет не длину общих префиксов циклических сдвигов; или надо что-то ещё добавить
- "будем использовать промежуточный массив " — лучше написать "вспомогательный"
- Добавить фразу и картинку про то, что массив LCP удобно представлять в виде ступенек/столбиков разной высоты
- Кстати, не очень понятно, зачем нужен Height, если по сути он выполняет роль LCP
- Надо сказать, в каком порядке мы фиксируем соседа: lcp[i] содержит префикс i и i-1 или i и i+1
- Думаю, что к утверждению 2 нужные пояснения, а то происходят нетривиальные переходы из словесной формулировки в утверждение; ещё надо добавить, что не изменится относительный порядок именно этих двух суффиксов, а не всех
- Алгоритм Карккайнена-Сандерса
- fixed Алгоритм поиска подстроки в строке с помощью суффиксного массива (7)
- Отформатировать псевдокоды
- Разобраться в алгоритмах и написать нормальное описание: там встречаются баги
- Исправить баги в Tex
- Оформить правильно источники информации
5. Задача о наименьшем общем предке
- Сведение задачи LCA к задаче RMQ
- Сведение задачи RMQ к задаче LCA
- Метод двоичного подъема
- Решение RMQ с помощью разреженной таблицы
- fixed Алгоритм Фарака-Колтона и Бендера (2)
- Отформатировать псевдокод
- Увеличить дроби
- !!! Heavy-light декомпозиция (6)
- "решается с помощью heavy-light декомпозиции" — может быть решена
- "Пусть A, B - ко" — дефисы нужно заменить на тире
- В начале у тебя идут вершины a,b и A,B, а потом u,v и a,b. Надо сделать единообразно, чтобы начало конспекта и его конец согласовывались. Например, сделать корни путей большими буквами — норм. Тогда можно либо a,b и A,B, либо u,v и U,V.
- "В данном случае корень одного из путей является вершиной другого." — а почему пути не могут пересекаться крест-на-крест?
- Слишком много повтором «Пусть» в доказательстве леммы.
- "Но LCA должен принадлежать двум путям. Но" — дублирование «Но»
- "Предположим, что LCA не равны" — криво написано, нужно формально исходя из формулировки
- Ну и вообще, как будто слов пожадничал на лемму и кое-как написал
- "Построим декомпозицию." — декомпозицию чего и для чего? Очень плохо оставлять открытый контекст, особенно в начале пункта. Лучше чуть более подробно описать, чтобы было понятно
- "Корень пути, на котором лежит текущая вершина.
Из всех путей выбираем тот, чья начальная вершина наиболее удалена от корня дерева." — вообще непонятно, как связано то, что мы хотим сохранить с тем, что написано потом. Нет предложения-связки
- "Пусть требуется" — опять пуст
- "Пусть на данной итерации" — как будто других слов нет
- "LCA будет та" — это не по-русски
- Возьми LCA в тексте везде в \mathrm
- "Потому что бесконечно большое количество путей" — откуда в конечном дереве взялось бесконечно большое число путей?
- fixed Алгоритм Шибера-Вишкина (3)
- Англоязычные термины
- Интервики на LCA
- Чё ещё за подготовка?
- Почему-то в определении находится не определение, надо бы нормально переписать
- Лучше дать нормальное название обхода: pre-order, in-order или post-, если что-то из этого оно и есть
- Увеличить дроби
- Добавить См. также
- Добавить Категории
- Правильно оформить источники информации
- Алгоритм Тарьяна поиска LCA за O(1) в оффлайн
- fixed Link-Cut Tree (5)
- Отформатировать псевдокоды
- Написать более понятное введение и пояснить подробней остальные смутные операции
- Список оформлен некрасиво в начале
- Категории
- Оформить правильно См. также и Источники информации
6. Матроиды
Основные факты теории матроидов
- Определение матроида
- Примеры матроидов
- Прямая сумма матроидов
- Теорема Радо-Эдмондса (жадный алгоритм)
- Теорема о базах
- Аксиоматизация матроида базами
- Теорема о циклах
- Аксиоматизация матроида циклами
- Ранговая функция, полумодулярность
- Двойственный матроид
- Оператор замыкания для матроидов
- Покрытия, закрытые множества
- Матроид Вамоса
Пересечение матроидов
- Пересечение матроидов, определение, примеры
- взяли Лемма о паросочетании в графе замен (5)
- Док-во по индукции оформить красиво
- Исправить док-во: неверный переход
- Заменить xor на треугольник
- Добавить категорию
- fixed Лемма о единственном паросочетании в графе замен (0.5)
- Оформить правильно источники информации
- Добавить категорию
- Категория
- Оформить красиво док-во по индукции
- fixed Граф замен для двух матроидов (3)
- Нарисовать нормальную картинку
- Добавить информацию про граф замен для одного матроида
- Исправить ссылки в соответствующих конспектах
- Создать новый конспект, в него сделать перенаправление из текущего
- Оформиь правильно источники информации
- Добавить категорию
- Лемма о единственном паросочетании в подграфе замен, индуцированном кратчайшим путем
- Алгоритм построения базы в пересечении матроидов
Объединение матроидов
- fixed Объединение матроидов, проверка множества на независимость (8)
- Добавить формальное определение
- Структурировать конспект, а не оставлять просто набором тезисов
- Добавить категории
- Добавить ссылок
- Избавиться от сокращений
- Добавить содержательный примеры
- Заменить тире на Шаблон:---
- взяли Объединение матроидов, доказательство того, что объединение является матроидом (1)
- Добавить категории
- Добавить интервики
- Отформатировать по правилам
- Помёрджить с предыдущим конспектом
- взяли Алгоритм построения базы в объединении матроидов (7)
- В определение само определение выделить жирным
- Тире заменить на Шаблон:---
- Добавить категории
- Добавить псевдокод
- Написать более подробное описание алгоритма поиска базы в объединении
7. Теория расписаний
Общая теория
- Классификация задач
- fixed Методы решения задач теории расписаний (5)
- Как-нибудь структурировать конспект, а то много всего рандомного написано
- Ссылки оформить как интервики
- Оставить только совсем мелкие доказательства, на наборы задач кинуть ссылки или создать новые конспекты
- Добавить источники информации
- Разнести на отдельные конспекты с доказательством, если такой задачи нет, или оформить как основную статью с ссылкой на оригинал, приведя обзорное решение
- Правило Лаулера
Задачи с одним станком
- взяли (1.5)
- Переименовать конспект и оставить перенаправление
- Задачу в шаблон
- Отформатировать псевдокод
- Добавить категории
- Заменить литературу на источники информации
- fixed (8)
- Начать с простейших примеров, когда только d_i, потом усложнять
- Отформатировать псевдокод
- Оформить правильно источники информации
- Добавить категории
- fixed (3)
- Более простой аналог задачи рассмотреть (только с U_i)
- Отформатировать псевдокод
- Заменить литературу на источники информации
- fixed (7)
- Задачу в шаблон
- Отформатировать псевдокоды
- Более подробное и понятное описание, чтобы было понятно, как закодить
- Увеличить дроби
Специальные случаи задач для двух станков
- fixed (2)
- Увеличить дроби
- Оформить правильно источники информации
- Добавить категории
- Заменить знаки неравенств
- Взять задачу в шаблон, пункт описание не нужен
- Добавить нотацию задачи в начало
- fixed (5)
- Допилить
- Доказать корректность
- Задачу в шаблон
- Отформатировать псевдокод
- Добавить категории
- fixed (3)
- Задачу в шаблон
- Заменить знаки неравенств
- Отформатировать псевдокод
- Красивые картинки
- fixed (1)
- Заменить знаки неравенств
- Категории
- задачу в шаблон
- Отформатировать псевдокод
- fixed (1)
- Задачу в шаблон
- Знаки неравенств
- Источники информации
- Дефисы на тире
- Исправить теховское обозначение задачи
- fixed (10)
- Доделать
Задачи для произвольного числа станков
- fixed Flow shop (2)
- Таблички оформить как викитаблички, а не как код
- Битое примечание
- Отформатировать псевдокоды
- Добавить категории
- fixed (3)
- Задачу в шаблон
- Отформатировать псевдокоды
- Заменить знаки неравенств
- Кажется, тут не совсем правильно написано решение; вчитаться, пофиксить все баги и написать понятней
- fixed (0.5)
- Задачу в шаблон
- Заменить знаки неравенств
- Добавить информации в источники
- fixed (0.5)
- Категории
- Шаблон
- Знаки неравенств