mirror of
https://github.com/krahets/hello-algo.git
synced 2026-07-21 11:06:07 +00:00
deploy
This commit is contained in:
@@ -25,7 +25,7 @@
|
||||
|
||||
|
||||
|
||||
<title>11.3. 插入排序 - Hello 算法</title>
|
||||
<title>11.3. 插入排序 - Hello 算法</title>
|
||||
|
||||
|
||||
|
||||
@@ -111,7 +111,7 @@
|
||||
<div class="md-header__topic" data-md-component="header-topic">
|
||||
<span class="md-ellipsis">
|
||||
|
||||
11.3. 插入排序
|
||||
11.3. 插入排序
|
||||
|
||||
</span>
|
||||
</div>
|
||||
@@ -268,14 +268,14 @@
|
||||
|
||||
|
||||
<label class="md-nav__link" for="__nav_1" id="__nav_1_label" tabindex="0">
|
||||
0. 写在前面
|
||||
0. 写在前面
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
</label>
|
||||
|
||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_1_label" aria-expanded="false">
|
||||
<label class="md-nav__title" for="__nav_1">
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
0. 写在前面
|
||||
0. 写在前面
|
||||
</label>
|
||||
<ul class="md-nav__list" data-md-scrollfix>
|
||||
|
||||
@@ -286,7 +286,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_preface/about_the_book/" class="md-nav__link">
|
||||
0.1. 关于本书
|
||||
0.1. 关于本书
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -300,7 +300,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_preface/suggestions/" class="md-nav__link">
|
||||
0.2. 如何使用本书
|
||||
0.2. 如何使用本书
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -314,7 +314,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_preface/installation/" class="md-nav__link">
|
||||
0.3. 编程环境安装
|
||||
0.3. 编程环境安装
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -328,7 +328,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_preface/contribution/" class="md-nav__link">
|
||||
0.4. 一起参与创作
|
||||
0.4. 一起参与创作
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -367,14 +367,14 @@
|
||||
|
||||
|
||||
<label class="md-nav__link" for="__nav_2" id="__nav_2_label" tabindex="0">
|
||||
1. 引言
|
||||
1. 引言
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
</label>
|
||||
|
||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="false">
|
||||
<label class="md-nav__title" for="__nav_2">
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
1. 引言
|
||||
1. 引言
|
||||
</label>
|
||||
<ul class="md-nav__list" data-md-scrollfix>
|
||||
|
||||
@@ -385,7 +385,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_introduction/algorithms_are_everywhere/" class="md-nav__link">
|
||||
1.1. 算法无处不在
|
||||
1.1. 算法无处不在
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -399,7 +399,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_introduction/what_is_dsa/" class="md-nav__link">
|
||||
1.2. 算法是什么
|
||||
1.2. 算法是什么
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -444,14 +444,14 @@
|
||||
|
||||
|
||||
<label class="md-nav__link" for="__nav_3" id="__nav_3_label" tabindex="0">
|
||||
2. 计算复杂度
|
||||
2. 计算复杂度
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
</label>
|
||||
|
||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_3_label" aria-expanded="false">
|
||||
<label class="md-nav__title" for="__nav_3">
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
2. 计算复杂度
|
||||
2. 计算复杂度
|
||||
</label>
|
||||
<ul class="md-nav__list" data-md-scrollfix>
|
||||
|
||||
@@ -462,7 +462,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_computational_complexity/performance_evaluation/" class="md-nav__link">
|
||||
2.1. 算法效率评估
|
||||
2.1. 算法效率评估
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -476,7 +476,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_computational_complexity/time_complexity/" class="md-nav__link">
|
||||
2.2. 时间复杂度
|
||||
2.2. 时间复杂度
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -490,7 +490,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_computational_complexity/space_complexity/" class="md-nav__link">
|
||||
2.3. 空间复杂度
|
||||
2.3. 空间复杂度
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -504,7 +504,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_computational_complexity/space_time_tradeoff/" class="md-nav__link">
|
||||
2.4. 权衡时间与空间
|
||||
2.4. 权衡时间与空间
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -518,7 +518,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_computational_complexity/summary/" class="md-nav__link">
|
||||
2.5. 小结
|
||||
2.5. 小结
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -559,14 +559,14 @@
|
||||
|
||||
|
||||
<label class="md-nav__link" for="__nav_4" id="__nav_4_label" tabindex="0">
|
||||
3. 数据结构简介
|
||||
3. 数据结构简介
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
</label>
|
||||
|
||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="false">
|
||||
<label class="md-nav__title" for="__nav_4">
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
3. 数据结构简介
|
||||
3. 数据结构简介
|
||||
</label>
|
||||
<ul class="md-nav__list" data-md-scrollfix>
|
||||
|
||||
@@ -577,7 +577,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_data_structure/data_and_memory/" class="md-nav__link">
|
||||
3.1. 数据与内存
|
||||
3.1. 数据与内存
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -591,7 +591,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_data_structure/classification_of_data_structure/" class="md-nav__link">
|
||||
3.2. 数据结构分类
|
||||
3.2. 数据结构分类
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -605,7 +605,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_data_structure/summary/" class="md-nav__link">
|
||||
3.3. 小结
|
||||
3.3. 小结
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -648,14 +648,14 @@
|
||||
|
||||
|
||||
<label class="md-nav__link" for="__nav_5" id="__nav_5_label" tabindex="0">
|
||||
4. 数组与链表
|
||||
4. 数组与链表
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
</label>
|
||||
|
||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="false">
|
||||
<label class="md-nav__title" for="__nav_5">
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
4. 数组与链表
|
||||
4. 数组与链表
|
||||
</label>
|
||||
<ul class="md-nav__list" data-md-scrollfix>
|
||||
|
||||
@@ -666,7 +666,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_array_and_linkedlist/array/" class="md-nav__link">
|
||||
4.1. 数组(Array)
|
||||
4.1. 数组(Array)
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -680,7 +680,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_array_and_linkedlist/linked_list/" class="md-nav__link">
|
||||
4.2. 链表(LinkedList)
|
||||
4.2. 链表(LinkedList)
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -694,7 +694,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_array_and_linkedlist/list/" class="md-nav__link">
|
||||
4.3. 列表(List)
|
||||
4.3. 列表(List)
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -708,7 +708,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_array_and_linkedlist/summary/" class="md-nav__link">
|
||||
4.4. 小结
|
||||
4.4. 小结
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -751,14 +751,14 @@
|
||||
|
||||
|
||||
<label class="md-nav__link" for="__nav_6" id="__nav_6_label" tabindex="0">
|
||||
5. 栈与队列
|
||||
5. 栈与队列
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
</label>
|
||||
|
||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_6_label" aria-expanded="false">
|
||||
<label class="md-nav__title" for="__nav_6">
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
5. 栈与队列
|
||||
5. 栈与队列
|
||||
</label>
|
||||
<ul class="md-nav__list" data-md-scrollfix>
|
||||
|
||||
@@ -769,7 +769,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_stack_and_queue/stack/" class="md-nav__link">
|
||||
5.1. 栈(Stack)
|
||||
5.1. 栈(Stack)
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -783,7 +783,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_stack_and_queue/queue/" class="md-nav__link">
|
||||
5.2. 队列(Queue)
|
||||
5.2. 队列(Queue)
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -797,7 +797,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_stack_and_queue/deque/" class="md-nav__link">
|
||||
5.3. 双向队列(Deque)
|
||||
5.3. 双向队列(Deque)
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -811,7 +811,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_stack_and_queue/summary/" class="md-nav__link">
|
||||
5.4. 小结
|
||||
5.4. 小结
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -852,14 +852,14 @@
|
||||
|
||||
|
||||
<label class="md-nav__link" for="__nav_7" id="__nav_7_label" tabindex="0">
|
||||
6. 散列表
|
||||
6. 散列表
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
</label>
|
||||
|
||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_7_label" aria-expanded="false">
|
||||
<label class="md-nav__title" for="__nav_7">
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
6. 散列表
|
||||
6. 散列表
|
||||
</label>
|
||||
<ul class="md-nav__list" data-md-scrollfix>
|
||||
|
||||
@@ -870,7 +870,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_hashing/hash_map/" class="md-nav__link">
|
||||
6.1. 哈希表(HashMap)
|
||||
6.1. 哈希表(HashMap)
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -884,7 +884,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_hashing/hash_collision/" class="md-nav__link">
|
||||
6.2. 哈希冲突处理
|
||||
6.2. 哈希冲突处理
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -898,7 +898,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_hashing/summary/" class="md-nav__link">
|
||||
6.3. 小结
|
||||
6.3. 小结
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -943,14 +943,14 @@
|
||||
|
||||
|
||||
<label class="md-nav__link" for="__nav_8" id="__nav_8_label" tabindex="0">
|
||||
7. 二叉树
|
||||
7. 二叉树
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
</label>
|
||||
|
||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_8_label" aria-expanded="false">
|
||||
<label class="md-nav__title" for="__nav_8">
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
7. 二叉树
|
||||
7. 二叉树
|
||||
</label>
|
||||
<ul class="md-nav__list" data-md-scrollfix>
|
||||
|
||||
@@ -961,7 +961,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_tree/binary_tree/" class="md-nav__link">
|
||||
7.1. 二叉树(Binary Tree)
|
||||
7.1. 二叉树(Binary Tree)
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -975,7 +975,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_tree/binary_tree_traversal/" class="md-nav__link">
|
||||
7.2. 二叉树遍历
|
||||
7.2. 二叉树遍历
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -989,7 +989,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_tree/binary_search_tree/" class="md-nav__link">
|
||||
7.3. 二叉搜索树
|
||||
7.3. 二叉搜索树
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -1003,7 +1003,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_tree/avl_tree/" class="md-nav__link">
|
||||
7.4. AVL 树 *
|
||||
7.4. AVL 树 *
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -1017,7 +1017,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_tree/summary/" class="md-nav__link">
|
||||
7.5. 小结
|
||||
7.5. 小结
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -1054,14 +1054,14 @@
|
||||
|
||||
|
||||
<label class="md-nav__link" for="__nav_9" id="__nav_9_label" tabindex="0">
|
||||
8. 堆
|
||||
8. 堆
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
</label>
|
||||
|
||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_9_label" aria-expanded="false">
|
||||
<label class="md-nav__title" for="__nav_9">
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
8. 堆
|
||||
8. 堆
|
||||
</label>
|
||||
<ul class="md-nav__list" data-md-scrollfix>
|
||||
|
||||
@@ -1072,7 +1072,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_heap/heap/" class="md-nav__link">
|
||||
8.1. 堆(Heap)
|
||||
8.1. 堆(Heap)
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -1113,14 +1113,14 @@
|
||||
|
||||
|
||||
<label class="md-nav__link" for="__nav_10" id="__nav_10_label" tabindex="0">
|
||||
9. 图
|
||||
9. 图
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
</label>
|
||||
|
||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_10_label" aria-expanded="false">
|
||||
<label class="md-nav__title" for="__nav_10">
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
9. 图
|
||||
9. 图
|
||||
</label>
|
||||
<ul class="md-nav__list" data-md-scrollfix>
|
||||
|
||||
@@ -1131,7 +1131,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_graph/graph/" class="md-nav__link">
|
||||
9.1. 图(Graph)
|
||||
9.1. 图(Graph)
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -1145,7 +1145,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_graph/graph_operations/" class="md-nav__link">
|
||||
9.2. 图基础操作
|
||||
9.2. 图基础操作
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -1159,7 +1159,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_graph/graph_traversal/" class="md-nav__link">
|
||||
9.3. 图的遍历
|
||||
9.3. 图的遍历
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -1202,14 +1202,14 @@
|
||||
|
||||
|
||||
<label class="md-nav__link" for="__nav_11" id="__nav_11_label" tabindex="0">
|
||||
10. 查找算法
|
||||
10. 查找算法
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
</label>
|
||||
|
||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_11_label" aria-expanded="false">
|
||||
<label class="md-nav__title" for="__nav_11">
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
10. 查找算法
|
||||
10. 查找算法
|
||||
</label>
|
||||
<ul class="md-nav__list" data-md-scrollfix>
|
||||
|
||||
@@ -1220,7 +1220,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_searching/linear_search/" class="md-nav__link">
|
||||
10.1. 线性查找
|
||||
10.1. 线性查找
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -1234,7 +1234,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_searching/binary_search/" class="md-nav__link">
|
||||
10.2. 二分查找
|
||||
10.2. 二分查找
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -1248,7 +1248,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_searching/hashing_search/" class="md-nav__link">
|
||||
10.3. 哈希查找
|
||||
10.3. 哈希查找
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -1262,7 +1262,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_searching/summary/" class="md-nav__link">
|
||||
10.4. 小结
|
||||
10.4. 小结
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -1311,14 +1311,14 @@
|
||||
|
||||
|
||||
<label class="md-nav__link" for="__nav_12" id="__nav_12_label" tabindex="0">
|
||||
11. 排序算法
|
||||
11. 排序算法
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
</label>
|
||||
|
||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_12_label" aria-expanded="true">
|
||||
<label class="md-nav__title" for="__nav_12">
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
11. 排序算法
|
||||
11. 排序算法
|
||||
</label>
|
||||
<ul class="md-nav__list" data-md-scrollfix>
|
||||
|
||||
@@ -1329,7 +1329,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../intro_to_sort/" class="md-nav__link">
|
||||
11.1. 排序简介
|
||||
11.1. 排序简介
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -1343,7 +1343,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../bubble_sort/" class="md-nav__link">
|
||||
11.2. 冒泡排序
|
||||
11.2. 冒泡排序
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -1366,12 +1366,12 @@
|
||||
|
||||
|
||||
<label class="md-nav__link md-nav__link--active" for="__toc">
|
||||
11.3. 插入排序
|
||||
11.3. 插入排序
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
</label>
|
||||
|
||||
<a href="./" class="md-nav__link md-nav__link--active">
|
||||
11.3. 插入排序
|
||||
11.3. 插入排序
|
||||
</a>
|
||||
|
||||
|
||||
@@ -1391,21 +1391,21 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#1131" class="md-nav__link">
|
||||
11.3.1. 算法流程
|
||||
11.3.1. 算法流程
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#1132" class="md-nav__link">
|
||||
11.3.2. 算法特性
|
||||
11.3.2. 算法特性
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#1133-vs" class="md-nav__link">
|
||||
11.3.3. 插入排序 vs 冒泡排序
|
||||
11.3.3. 插入排序 vs 冒泡排序
|
||||
</a>
|
||||
|
||||
</li>
|
||||
@@ -1426,7 +1426,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../quick_sort/" class="md-nav__link">
|
||||
11.4. 快速排序
|
||||
11.4. 快速排序
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -1440,7 +1440,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../merge_sort/" class="md-nav__link">
|
||||
11.5. 归并排序
|
||||
11.5. 归并排序
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -1454,7 +1454,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../summary/" class="md-nav__link">
|
||||
11.6. 小结
|
||||
11.6. 小结
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -1542,21 +1542,21 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#1131" class="md-nav__link">
|
||||
11.3.1. 算法流程
|
||||
11.3.1. 算法流程
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#1132" class="md-nav__link">
|
||||
11.3.2. 算法特性
|
||||
11.3.2. 算法特性
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#1133-vs" class="md-nav__link">
|
||||
11.3.3. 插入排序 vs 冒泡排序
|
||||
11.3.3. 插入排序 vs 冒泡排序
|
||||
</a>
|
||||
|
||||
</li>
|
||||
@@ -1585,14 +1585,14 @@
|
||||
|
||||
|
||||
|
||||
<h1 id="113">11.3. 插入排序<a class="headerlink" href="#113" title="Permanent link">¶</a></h1>
|
||||
<h1 id="113">11.3. 插入排序<a class="headerlink" href="#113" title="Permanent link">¶</a></h1>
|
||||
<p>「插入排序 Insertion Sort」是一种基于 <strong>数组插入操作</strong> 的排序算法。</p>
|
||||
<p>「插入操作」原理:选定某个待排序元素为基准数 <code>base</code>,将 <code>base</code> 与其左侧已排序区间元素依次对比大小,并插入到正确位置。</p>
|
||||
<p>回忆数组插入操作,我们需要将从目标索引到 <code>base</code> 之间的所有元素向右移动一位,然后再将 <code>base</code> 赋值给目标索引。</p>
|
||||
<p><img alt="insertion_operation" src="../insertion_sort.assets/insertion_operation.png" /></p>
|
||||
<p align="center"> Fig. 插入操作 </p>
|
||||
|
||||
<h2 id="1131">11.3.1. 算法流程<a class="headerlink" href="#1131" title="Permanent link">¶</a></h2>
|
||||
<h2 id="1131">11.3.1. 算法流程<a class="headerlink" href="#1131" title="Permanent link">¶</a></h2>
|
||||
<ol>
|
||||
<li>第 1 轮先选取数组的 <strong>第 2 个元素</strong> 为 <code>base</code> ,执行「插入操作」后,<strong>数组前 2 个元素已完成排序</strong>。</li>
|
||||
<li>第 2 轮选取 <strong>第 3 个元素</strong> 为 <code>base</code> ,执行「插入操作」后,<strong>数组前 3 个元素已完成排序</strong>。</li>
|
||||
@@ -1758,13 +1758,13 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<h2 id="1132">11.3.2. 算法特性<a class="headerlink" href="#1132" title="Permanent link">¶</a></h2>
|
||||
<h2 id="1132">11.3.2. 算法特性<a class="headerlink" href="#1132" title="Permanent link">¶</a></h2>
|
||||
<p><strong>时间复杂度 <span class="arithmatex">\(O(n^2)\)</span></strong> :最差情况下,各轮插入操作循环 <span class="arithmatex">\(n - 1\)</span> , <span class="arithmatex">\(n-2\)</span> , <span class="arithmatex">\(\cdots\)</span> , <span class="arithmatex">\(2\)</span> , <span class="arithmatex">\(1\)</span> 次,求和为 <span class="arithmatex">\(\frac{(n - 1) n}{2}\)</span> ,使用 <span class="arithmatex">\(O(n^2)\)</span> 时间。</p>
|
||||
<p><strong>空间复杂度 <span class="arithmatex">\(O(1)\)</span></strong> :指针 <span class="arithmatex">\(i\)</span> , <span class="arithmatex">\(j\)</span> 使用常数大小的额外空间。</p>
|
||||
<p><strong>原地排序</strong>:指针变量仅使用常数大小额外空间。</p>
|
||||
<p><strong>稳定排序</strong>:不交换相等元素。</p>
|
||||
<p><strong>自适应排序</strong>:最佳情况下,时间复杂度为 <span class="arithmatex">\(O(n)\)</span> 。</p>
|
||||
<h2 id="1133-vs">11.3.3. 插入排序 vs 冒泡排序<a class="headerlink" href="#1133-vs" title="Permanent link">¶</a></h2>
|
||||
<h2 id="1133-vs">11.3.3. 插入排序 vs 冒泡排序<a class="headerlink" href="#1133-vs" title="Permanent link">¶</a></h2>
|
||||
<div class="admonition question">
|
||||
<p class="admonition-title">Question</p>
|
||||
<p>虽然「插入排序」和「冒泡排序」的时间复杂度皆为 <span class="arithmatex">\(O(n^2)\)</span> ,但实际运行速度却有很大差别,这是为什么呢?</p>
|
||||
@@ -1853,7 +1853,7 @@
|
||||
<nav class="md-footer__inner md-grid" aria-label="页脚" >
|
||||
|
||||
|
||||
<a href="../bubble_sort/" class="md-footer__link md-footer__link--prev" aria-label="上一页: 11.2. 冒泡排序" rel="prev">
|
||||
<a href="../bubble_sort/" class="md-footer__link md-footer__link--prev" aria-label="上一页: 11.2. &nbsp; 冒泡排序" rel="prev">
|
||||
<div class="md-footer__button md-icon">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12Z"/></svg>
|
||||
</div>
|
||||
@@ -1862,20 +1862,20 @@
|
||||
<span class="md-footer__direction">
|
||||
上一页
|
||||
</span>
|
||||
11.2. 冒泡排序
|
||||
11.2. 冒泡排序
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
|
||||
|
||||
|
||||
<a href="../quick_sort/" class="md-footer__link md-footer__link--next" aria-label="下一页: 11.4. 快速排序" rel="next">
|
||||
<a href="../quick_sort/" class="md-footer__link md-footer__link--next" aria-label="下一页: 11.4. &nbsp; 快速排序" rel="next">
|
||||
<div class="md-footer__title">
|
||||
<div class="md-ellipsis">
|
||||
<span class="md-footer__direction">
|
||||
下一页
|
||||
</span>
|
||||
11.4. 快速排序
|
||||
11.4. 快速排序
|
||||
</div>
|
||||
</div>
|
||||
<div class="md-footer__button md-icon">
|
||||
|
||||
Reference in New Issue
Block a user