Update chapter covers (#1874)
* Align headings in mkdocs.yaml * Update chapter covers. * Bug fixes * Add the link of yuyanhuang * Add hover effect to the profile texts.
|
Before Width: | Height: | Size: 132 KiB After Width: | Height: | Size: 133 KiB |
|
Before Width: | Height: | Size: 125 KiB After Width: | Height: | Size: 126 KiB |
|
Before Width: | Height: | Size: 129 KiB After Width: | Height: | Size: 128 KiB |
|
Before Width: | Height: | Size: 95 KiB After Width: | Height: | Size: 95 KiB |
|
Before Width: | Height: | Size: 141 KiB After Width: | Height: | Size: 140 KiB |
|
Before Width: | Height: | Size: 104 KiB After Width: | Height: | Size: 104 KiB |
|
Before Width: | Height: | Size: 169 KiB After Width: | Height: | Size: 165 KiB |
|
Before Width: | Height: | Size: 81 KiB After Width: | Height: | Size: 81 KiB |
|
Before Width: | Height: | Size: 129 KiB After Width: | Height: | Size: 128 KiB |
|
Before Width: | Height: | Size: 128 KiB After Width: | Height: | Size: 130 KiB |
|
Before Width: | Height: | Size: 110 KiB After Width: | Height: | Size: 110 KiB |
|
Before Width: | Height: | Size: 136 KiB After Width: | Height: | Size: 135 KiB |
|
Before Width: | Height: | Size: 111 KiB After Width: | Height: | Size: 112 KiB |
|
Before Width: | Height: | Size: 216 KiB After Width: | Height: | Size: 214 KiB |
|
Before Width: | Height: | Size: 90 KiB After Width: | Height: | Size: 90 KiB |
|
Before Width: | Height: | Size: 109 KiB After Width: | Height: | Size: 110 KiB |
|
Before Width: | Height: | Size: 117 KiB After Width: | Height: | Size: 116 KiB |
@@ -515,6 +515,11 @@ a:hover .text-button span {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.profile-cell a:hover b,
|
||||
.profile-cell a:focus-visible b {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.profile-img {
|
||||
width: 5em;
|
||||
border-radius: 50%;
|
||||
|
||||
@@ -495,6 +495,11 @@ a:hover .text-button span {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.profile-cell a:hover b,
|
||||
.profile-cell a:focus-visible b {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.profile-img {
|
||||
width: 5em;
|
||||
border-radius: 50%;
|
||||
|
||||
|
Before Width: | Height: | Size: 132 KiB After Width: | Height: | Size: 132 KiB |
|
Before Width: | Height: | Size: 126 KiB After Width: | Height: | Size: 124 KiB |
|
Before Width: | Height: | Size: 129 KiB After Width: | Height: | Size: 130 KiB |
|
Before Width: | Height: | Size: 95 KiB After Width: | Height: | Size: 94 KiB |
|
Before Width: | Height: | Size: 141 KiB After Width: | Height: | Size: 141 KiB |
|
Before Width: | Height: | Size: 170 KiB After Width: | Height: | Size: 171 KiB |
|
Before Width: | Height: | Size: 81 KiB After Width: | Height: | Size: 81 KiB |
|
Before Width: | Height: | Size: 131 KiB After Width: | Height: | Size: 129 KiB |
|
Before Width: | Height: | Size: 144 KiB After Width: | Height: | Size: 147 KiB |
|
Before Width: | Height: | Size: 136 KiB After Width: | Height: | Size: 136 KiB |
|
Before Width: | Height: | Size: 113 KiB After Width: | Height: | Size: 113 KiB |
|
Before Width: | Height: | Size: 93 KiB After Width: | Height: | Size: 94 KiB |
|
Before Width: | Height: | Size: 111 KiB After Width: | Height: | Size: 110 KiB |
|
Before Width: | Height: | Size: 118 KiB After Width: | Height: | Size: 118 KiB |
@@ -1,4 +1,4 @@
|
||||
# Поисковая стратегия "разделяй и властвуй"
|
||||
# Поисковая стратегия разделяй и властвуй
|
||||
|
||||
Мы уже знаем, что алгоритмы поиска делятся на две большие категории.
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# Стратегия "разделяй и властвуй"
|
||||
# Стратегия разделяй и властвуй
|
||||
|
||||
<u>Разделяй и властвуй (divide and conquer)</u> - это очень важная и широко используемая стратегия построения алгоритмов. Обычно она реализуется через рекурсию и включает два этапа: "разделение" и "объединение".
|
||||
|
||||
|
||||
@@ -247,8 +247,10 @@
|
||||
<br><b>И. А. Шевкун</b>
|
||||
</div>
|
||||
<div class="profile-cell translator-profile-cell">
|
||||
<img class="profile-img" src="../assets/avatar/avatar_yuyanhuang.jpg" alt="Translator: yuyanhuang" />
|
||||
<br><b>Yuyan Huang</b>
|
||||
<a href="https://github.com/veronicahuang2977">
|
||||
<img class="profile-img" src="../assets/avatar/avatar_yuyanhuang.jpg" alt="Translator: yuyanhuang" />
|
||||
<br><b>Yuyan Huang</b>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -45,11 +45,11 @@ nav:
|
||||
- 0.1 Об этой книге: chapter_preface/about_the_book.md
|
||||
- 0.2 Как пользоваться этой книгой: chapter_preface/suggestions.md
|
||||
- 0.3 Резюме: chapter_preface/summary.md
|
||||
- Глава 1. Знакомство с алгоритмами:
|
||||
- Глава 1. Введение в алгоритмы:
|
||||
# [icon: material/calculator-variant-outline]
|
||||
- chapter_introduction/index.md
|
||||
- 1.1 Алгоритмы повсюду: chapter_introduction/algorithms_are_everywhere.md
|
||||
- 1.2 Что такое структуры данных и алгоритмы: chapter_introduction/what_is_dsa.md
|
||||
- 1.2 Что такое алгоритм: chapter_introduction/what_is_dsa.md
|
||||
- 1.3 Резюме: chapter_introduction/summary.md
|
||||
- Глава 2. Анализ сложности:
|
||||
# [icon: material/timer-sand]
|
||||
@@ -67,13 +67,13 @@ nav:
|
||||
- 3.3 Кодирование чисел *: chapter_data_structure/number_encoding.md
|
||||
- 3.4 Кодирование символов *: chapter_data_structure/character_encoding.md
|
||||
- 3.5 Резюме: chapter_data_structure/summary.md
|
||||
- Глава 4. Массив и связный список:
|
||||
- Глава 4. Массивы и списки:
|
||||
# [icon: material/view-list-outline]
|
||||
- chapter_array_and_linkedlist/index.md
|
||||
- 4.1 Массив: chapter_array_and_linkedlist/array.md
|
||||
- 4.2 Связный список: chapter_array_and_linkedlist/linked_list.md
|
||||
- 4.3 Список: chapter_array_and_linkedlist/list.md
|
||||
- 4.4 Память и кеш *: chapter_array_and_linkedlist/ram_and_cache.md
|
||||
- 4.4 Оперативная память и кэш *: chapter_array_and_linkedlist/ram_and_cache.md
|
||||
- 4.5 Резюме: chapter_array_and_linkedlist/summary.md
|
||||
- Глава 5. Стек и очередь:
|
||||
# [icon: material/stack-overflow]
|
||||
@@ -82,52 +82,52 @@ nav:
|
||||
- 5.2 Очередь: chapter_stack_and_queue/queue.md
|
||||
- 5.3 Двусторонняя очередь: chapter_stack_and_queue/deque.md
|
||||
- 5.4 Резюме: chapter_stack_and_queue/summary.md
|
||||
- Глава 6. Хеширование:
|
||||
- Глава 6. Хеш-таблицы:
|
||||
# [icon: material/table-search]
|
||||
- chapter_hashing/index.md
|
||||
- 6.1 Хеш-таблица: chapter_hashing/hash_map.md
|
||||
- 6.2 Хеш-коллизии: chapter_hashing/hash_collision.md
|
||||
- 6.3 Хеш-алгоритмы: chapter_hashing/hash_algorithm.md
|
||||
- 6.3 Алгоритмы хеширования: chapter_hashing/hash_algorithm.md
|
||||
- 6.4 Резюме: chapter_hashing/summary.md
|
||||
- Глава 7. Дерево:
|
||||
- Глава 7. Деревья:
|
||||
# [icon: material/graph-outline]
|
||||
- chapter_tree/index.md
|
||||
- 7.1 Двоичное дерево: chapter_tree/binary_tree.md
|
||||
- 7.2 Обход двоичного дерева: chapter_tree/binary_tree_traversal.md
|
||||
- 7.3 Представление дерева массивом: chapter_tree/array_representation_of_tree.md
|
||||
- 7.3 Представление двоичного дерева массивом: chapter_tree/array_representation_of_tree.md
|
||||
- 7.4 Двоичное дерево поиска: chapter_tree/binary_search_tree.md
|
||||
- 7.5 AVL-дерево *: chapter_tree/avl_tree.md
|
||||
- 7.6 Резюме: chapter_tree/summary.md
|
||||
- 7.6 Краткие итоги: chapter_tree/summary.md
|
||||
- Глава 8. Куча:
|
||||
# [icon: material/family-tree]
|
||||
- chapter_heap/index.md
|
||||
- 8.1 Куча: chapter_heap/heap.md
|
||||
- 8.2 Построение кучи: chapter_heap/build_heap.md
|
||||
- 8.3 Задача Top-K: chapter_heap/top_k.md
|
||||
- 8.3 Задача Top-k: chapter_heap/top_k.md
|
||||
- 8.4 Резюме: chapter_heap/summary.md
|
||||
- Глава 9. Граф:
|
||||
- Глава 9. Графы:
|
||||
# [icon: material/graphql]
|
||||
- chapter_graph/index.md
|
||||
- 9.1 Граф: chapter_graph/graph.md
|
||||
- 9.2 Базовые операции над графами: chapter_graph/graph_operations.md
|
||||
- 9.2 Базовые операции графа: chapter_graph/graph_operations.md
|
||||
- 9.3 Обход графа: chapter_graph/graph_traversal.md
|
||||
- 9.4 Резюме: chapter_graph/summary.md
|
||||
- 9.4 Краткие итоги: chapter_graph/summary.md
|
||||
- Глава 10. Поиск:
|
||||
# [icon: material/text-search]
|
||||
- chapter_searching/index.md
|
||||
- 10.1 Двоичный поиск: chapter_searching/binary_search.md
|
||||
- 10.2 Точка вставки двоичного поиска: chapter_searching/binary_search_insertion.md
|
||||
- 10.3 Граничные случаи двоичного поиска: chapter_searching/binary_search_edge.md
|
||||
- 10.4 Стратегия оптимизации через хеширование: chapter_searching/replace_linear_by_hashing.md
|
||||
- "10.5 Алгоритмы поиска: новый взгляд": chapter_searching/searching_algorithm_revisited.md
|
||||
- 10.2 Двоичный поиск точки вставки: chapter_searching/binary_search_insertion.md
|
||||
- 10.3 Двоичный поиск границ: chapter_searching/binary_search_edge.md
|
||||
- 10.4 Стратегии оптимизации хеширования: chapter_searching/replace_linear_by_hashing.md
|
||||
- 10.5 Переосмысление алгоритмов поиска: chapter_searching/searching_algorithm_revisited.md
|
||||
- 10.6 Резюме: chapter_searching/summary.md
|
||||
- Глава 11. Сортировка:
|
||||
# [icon: material/sort-ascending]
|
||||
- chapter_sorting/index.md
|
||||
- 11.1 Алгоритмы сортировки: chapter_sorting/sorting_algorithm.md
|
||||
- 11.2 Сортировка выбором: chapter_sorting/selection_sort.md
|
||||
- 11.3 Пузырьковая сортировка: chapter_sorting/bubble_sort.md
|
||||
- 11.4 Сортировка вставкой: chapter_sorting/insertion_sort.md
|
||||
- 11.3 Сортировка пузырьком: chapter_sorting/bubble_sort.md
|
||||
- 11.4 Сортировка вставками: chapter_sorting/insertion_sort.md
|
||||
- 11.5 Быстрая сортировка: chapter_sorting/quick_sort.md
|
||||
- 11.6 Сортировка слиянием: chapter_sorting/merge_sort.md
|
||||
- 11.7 Пирамидальная сортировка: chapter_sorting/heap_sort.md
|
||||
@@ -138,8 +138,8 @@ nav:
|
||||
- Глава 12. Разделяй и властвуй:
|
||||
# [icon: material/set-split]
|
||||
- chapter_divide_and_conquer/index.md
|
||||
- 12.1 Алгоритмы разделяй и властвуй: chapter_divide_and_conquer/divide_and_conquer.md
|
||||
- 12.2 Стратегия поиска разделяй и властвуй: chapter_divide_and_conquer/binary_search_recur.md
|
||||
- 12.1 Стратегия разделяй и властвуй: chapter_divide_and_conquer/divide_and_conquer.md
|
||||
- 12.2 Поисковая стратегия разделяй и властвуй: chapter_divide_and_conquer/binary_search_recur.md
|
||||
- 12.3 Задача построения двоичного дерева: chapter_divide_and_conquer/build_binary_tree_problem.md
|
||||
- 12.4 Задача о Ханойской башне: chapter_divide_and_conquer/hanota_problem.md
|
||||
- 12.5 Резюме: chapter_divide_and_conquer/summary.md
|
||||
@@ -149,16 +149,16 @@ nav:
|
||||
- 13.1 Алгоритм поиска с возвратом: chapter_backtracking/backtracking_algorithm.md
|
||||
- 13.2 Задача о перестановках: chapter_backtracking/permutations_problem.md
|
||||
- 13.3 Задача о сумме подмножеств: chapter_backtracking/subset_sum_problem.md
|
||||
- 13.4 Задача о $n$ ферзях: chapter_backtracking/n_queens_problem.md
|
||||
- 13.4 Задача о n ферзях: chapter_backtracking/n_queens_problem.md
|
||||
- 13.5 Резюме: chapter_backtracking/summary.md
|
||||
- Глава 14. Динамическое программирование:
|
||||
# [icon: material/table-pivot]
|
||||
- chapter_dynamic_programming/index.md
|
||||
- 14.1 Введение в динамическое программирование: chapter_dynamic_programming/intro_to_dynamic_programming.md
|
||||
- 14.1 Первое знакомство с динамическим программированием: chapter_dynamic_programming/intro_to_dynamic_programming.md
|
||||
- 14.2 Свойства задач динамического программирования: chapter_dynamic_programming/dp_problem_features.md
|
||||
- 14.3 Подход к решению задач динамического программирования: chapter_dynamic_programming/dp_solution_pipeline.md
|
||||
- 14.4 Задача о рюкзаке 0-1: chapter_dynamic_programming/knapsack_problem.md
|
||||
- 14.5 Задача о неограниченном рюкзаке: chapter_dynamic_programming/unbounded_knapsack_problem.md
|
||||
- 14.5 Задача о полном рюкзаке: chapter_dynamic_programming/unbounded_knapsack_problem.md
|
||||
- 14.6 Задача о расстоянии редактирования: chapter_dynamic_programming/edit_distance_problem.md
|
||||
- 14.7 Резюме: chapter_dynamic_programming/summary.md
|
||||
- Глава 15. Жадность:
|
||||
|
||||