Участник:Shersh/Тикеты по конспектам year2013 — различия между версиями
Shersh (обсуждение | вклад) (→8. Сортировка) |
Shersh (обсуждение | вклад) (→8. Сортировка) |
||
Строка 91: | Строка 91: | ||
== 8. [[Сортировка]] == | == 8. [[Сортировка]] == | ||
# [[Сортировка выбором]] | # [[Сортировка выбором]] | ||
− | # [[Сортировка пузырьком]] | + | ## Ссылку через интервики |
− | # [[Сортировка вставками]] | + | # '''!!!''' [[Сортировка пузырьком]] |
+ | ## Добавить ещё оптимизаций этой сортировки (шейкерная сортировка, расчёской, odd-even и прочие {{---}} полный список есть на [[ wikipedia:en:Bubble_sort | википедии ]]) | ||
+ | ## Дать точные оценки на число сравнений в худшем случае | ||
+ | ## Отформатировать псевдокод | ||
+ | ## Ссылка на вики | ||
+ | # '''!!!''' [[Сортировка вставками]] | ||
+ | ## То же самое, что и в предыдущем тикете | ||
# [[Сортировка Шелла]] | # [[Сортировка Шелла]] | ||
# '''!!!''' [[Сортировка кучей]] | # '''!!!''' [[Сортировка кучей]] | ||
## Можно добавить всякие модификации сортировки кучей, например, JSort. | ## Можно добавить всякие модификации сортировки кучей, например, JSort. | ||
# [[Быстрая сортировка]] | # [[Быстрая сортировка]] | ||
− | # [[Сортировка слиянием]] | + | ## Тут вообще ссылки ужасные |
+ | # '''!!!''' [[Сортировка слиянием]] | ||
+ | ## Эта сортировка хорошо параллелится. Но вдруг можно придумать, как манипулировать потоками, чтобы достичь наибольшей эффективности, особенно если одновременно может работать ограниченное число потоков. | ||
+ | ## Написать псевдокод многопоточной сортировки | ||
# [[Cортировка слиянием с использованием O(1) дополнительной памяти]] | # [[Cортировка слиянием с использованием O(1) дополнительной памяти]] | ||
# [[Теорема о нижней оценке для сортировки сравнениями]] | # [[Теорема о нижней оценке для сортировки сравнениями]] | ||
# [[Сортировка подсчетом]] | # [[Сортировка подсчетом]] | ||
# [[Сортировка подсчетом сложных объектов]] | # [[Сортировка подсчетом сложных объектов]] | ||
− | # [[Цифровая сортировка]] | + | # '''!!!''' [[Цифровая сортировка]] |
+ | ## Добавить модификацию для сортировки цифр в порядке от старших к младшим | ||
# [[Карманная сортировка]] | # [[Карманная сортировка]] | ||
# [[Поиск k-ой порядковой статистики]] | # [[Поиск k-ой порядковой статистики]] | ||
# [[Поиск k-ой порядковой статистики за линейное время]] | # [[Поиск k-ой порядковой статистики за линейное время]] | ||
# [[Сортировка Хана]] | # [[Сортировка Хана]] | ||
+ | ## Привести конспект в порядок: добавить шаблоны определений, шаблоны лемм | ||
+ | ## При предложении дополнительных правок (например, картинок) может рассматриваться как полноценное дополнение | ||
# [[Timsort]] | # [[Timsort]] | ||
Версия 23:27, 1 мая 2014
Тикеты индексируются как "X-Y", где X — номер раздела, Y — номер конспекта внутри раздела.
Содержание
1. Амортизационный анализ
- !!! Амортизационный анализ
- Можно добавить ещё по примеру на каждый метод.
- Саморасширяющийся массив
- Массив с увеличением/уменьшением размера
- Объединить с предыдущим, сделать всё красиво.
- Список
- Стек
- Очередь
- Заменить ссылки в источника на интервики
- взяли Персистентный стек
- взяли Персистентная очередь
- взяли Персистентный дек
- Добавить по примеру задачи в каждый из трёх конспектов выше, где может пригодиться такая структура (все три задачи будут рассматриваться как один конспект; можно разделить, если примеры будут очень сложными)
- Мажорирующий элемент
- !!! Счетчик Кнута
- Добавить картинки с более понятным пояснением
- Написать красиво и аккуратно (тут требуется человек с чувством прекрасного)
- Может быть можно обобщить как-то на случай -ичной системы счисления? (используется в толстых кучах)
- Будет полезно добавить источники, если про это где-то можно почитать
2. Приоритетные очереди
- Двоичная куча
- Ссылки на википедию сделать через интервики
- Биномиальная куча
- интервики
- Фибоначчиева куча
- Ссылки заменить на интервики
- Левосторонняя куча
- Тонкая куча
- Толстая куча на избыточном счетчике
- Расписать подробно операцию "декремент". Можно как-то связать со счётчиком Кнута.
- Куча Бродала-Окасаки
3. Система непересекающихся множеств
- Наивные реализации
- Списки с весовой эвристикой
- Реализация с помощью леса корневых деревьев
- Интервики
4. Поисковые структуры данных
- Упорядоченное множество
- Дерево поиска, наивная реализация
- АВЛ-дерево
- 2-3 дерево
- B-дерево
- Красно-черное дерево
- Декартово дерево
- Декартово дерево по неявному ключу
- Splay-дерево
- Рандомизированное бинарное дерево поиска
- Дерево ван Эмде Боаса
- Список с пропусками
- Fusion tree
- Сверхбыстрый цифровой бор
- В каждом конспекте сделать ссылки на википедию через интервики
5. Дерево отрезков
- Статистики на отрезках. Корневая эвристика
- !!! Дерево отрезков. Построение
- Добавить псевдокод персистентного дерева отрезков
- Заменить в псевдокоде f на бинарную операцию
- Поправить ссылки в источниках
- Реализация запроса в дереве отрезков сверху
- Реализация запроса в дереве отрезков снизу
- Несогласованные поддеревья. Реализация массового обновления
- Многомерное дерево отрезков
- Сжатое многомерное дерево отрезков
6. Дерево Фенвика
- Дерево Фенвика
- Встречное дерево Фенвика
- Дерево Фенвика для некоммутативных операций
- Многомерное дерево Фенвика
7. Хеширование
- Хеш-таблица
- !!! Разрешение коллизий
- Добавить примеры каких-нибудь интересных и популярных хешей, поизучать их свойства
- Хеширование кукушки
- Идеальное хеширование
- Перехеширование. Амортизационный анализ
- Фильтр Блума
- Универсальное семейство хеш-функций
8. Сортировка
- Сортировка выбором
- Ссылку через интервики
- !!! Сортировка пузырьком
- Добавить ещё оптимизаций этой сортировки (шейкерная сортировка, расчёской, odd-even и прочие — полный список есть на википедии )
- Дать точные оценки на число сравнений в худшем случае
- Отформатировать псевдокод
- Ссылка на вики
- !!! Сортировка вставками
- То же самое, что и в предыдущем тикете
- Сортировка Шелла
- !!! Сортировка кучей
- Можно добавить всякие модификации сортировки кучей, например, JSort.
- Быстрая сортировка
- Тут вообще ссылки ужасные
- !!! Сортировка слиянием
- Эта сортировка хорошо параллелится. Но вдруг можно придумать, как манипулировать потоками, чтобы достичь наибольшей эффективности, особенно если одновременно может работать ограниченное число потоков.
- Написать псевдокод многопоточной сортировки
- Cортировка слиянием с использованием O(1) дополнительной памяти
- Теорема о нижней оценке для сортировки сравнениями
- Сортировка подсчетом
- Сортировка подсчетом сложных объектов
- !!! Цифровая сортировка
- Добавить модификацию для сортировки цифр в порядке от старших к младшим
- Карманная сортировка
- Поиск k-ой порядковой статистики
- Поиск k-ой порядковой статистики за линейное время
- Сортировка Хана
- Привести конспект в порядок: добавить шаблоны определений, шаблоны лемм
- При предложении дополнительных правок (например, картинок) может рассматриваться как полноценное дополнение
- Timsort
9. Сортирующие сети
- Сортирующие сети
- Проверка сети компараторов на то, что она сортирующая. 0-1 принцип
- Сортировочные сети с особыми свойствами
- Сортирующие сети для квадратичных сортировок
- Сеть Бетчера