Skip to content

Commit ce15295

Browse files
author
hustcc
committed
fixed markdown typo
1 parent 0097c9f commit ce15295

File tree

7 files changed

+13
-13
lines changed

7 files changed

+13
-13
lines changed

1.bubbleSort.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828

2929
## 4. 什么时候最慢
3030

31-
当输入的数据是反序时(写一个for循环反序输出数据不就行了,干嘛要用你冒泡排序呢,我是闲的吗)。
31+
当输入的数据是反序时(写一个 for 循环反序输出数据不就行了,干嘛要用你冒泡排序呢,我是闲的吗)。
3232

3333

3434
## 5. JavaScript 代码实现
@@ -50,7 +50,7 @@ function bubbleSort(arr) {
5050
```
5151

5252

53-
## 5. Python 代码实现
53+
## 6. Python 代码实现
5454

5555
```python
5656
def bubbleSort(arr):

10.radixSort.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
- 桶排序:每个桶存储一定范围的数值;
1515

1616

17-
## 2. LSD基数排序动图演示
17+
## 2. LSD 基数排序动图演示
1818

1919
![动图演示](res/radixSort.gif)
2020

4.shellSort.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,15 @@
44

55
希尔排序是基于插入排序的以下两点性质而提出改进方法的:
66

7-
- 插入排序在对几乎已经排好序的数据操作时, 效率高, 即可以达到线性排序的效率
8-
- 但插入排序一般来说是低效的, 因为插入排序每次只能将数据移动一位
7+
- 插入排序在对几乎已经排好序的数据操作时,效率高,即可以达到线性排序的效率
8+
- 但插入排序一般来说是低效的,因为插入排序每次只能将数据移动一位
99

1010
希尔排序的基本思想是:先将整个待排序的记录序列分割成为若干子序列分别进行直接插入排序,待整个序列中的记录“基本有序”时,再对全体记录进行依次直接插入排序。
1111

1212

1313
## 1. 算法步骤
1414

15-
1. 选择一个增量序列t1,t2,…,tk,其中 ti > tj,tk=1;
15+
1. 选择一个增量序列 t1,t2,…,tk,其中 ti > tj,tk=1;
1616

1717
2. 按增量序列个数 k,对序列进行 k 趟排序;
1818

5.mergeSort.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,10 @@
33
归并排序(Merge sort)是建立在归并操作上的一种有效的排序算法。该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。
44

55
作为一种典型的分而治之思想的算法应用,归并排序的实现由两种方法:
6-
- 自上而下的递归(所有递归的方法都可以用迭代重写,所以就有了第2种方法);
6+
- 自上而下的递归(所有递归的方法都可以用迭代重写,所以就有了第 2 种方法);
77
- 自下而上的迭代;
88

9-
在《数据结构与算法JavaScript描述》中,作者给出了自下而上的迭代方法。但是对于递归法,作者却认为:
9+
在《数据结构与算法 JavaScript 描述》中,作者给出了自下而上的迭代方法。但是对于递归法,作者却认为:
1010

1111
> However, it is not possible to do so in JavaScript, as the recursion goes too deep for the language to handle.
1212
>
@@ -26,7 +26,7 @@
2626

2727
3. 比较两个指针所指向的元素,选择相对小的元素放入到合并空间,并移动指针到下一位置;
2828

29-
4. 重复步骤3直到某一指针达到序列尾
29+
4. 重复步骤 3 直到某一指针达到序列尾
3030

3131
5. 将另一序列剩下的所有元素直接复制到合并序列尾。
3232

6.quickSort.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@
66

77
快速排序又是一种分而治之思想在排序算法上的典型应用。本质上来看,快速排序应该算是在冒泡排序基础上的递归分治法。
88

9-
快速排序的名字起的是简单粗暴,因为一听到这个名字你就知道它存在的意义,就是快,而且效率高! 它是处理大数据最快的排序算法之一了。虽然 Worst Case 的时间复杂度达到了 O(n²),但是人家就是优秀,在大多数情况下都比平均时间复杂度为 O(n logn) 的排序算法表现要更好,可是这是为什么呢,我也不知道。好在我的强迫症又犯了,查了N多资料终于在《算法艺术与信息学竞赛》上找到了满意的答案:
9+
快速排序的名字起的是简单粗暴,因为一听到这个名字你就知道它存在的意义,就是快,而且效率高! 它是处理大数据最快的排序算法之一了。虽然 Worst Case 的时间复杂度达到了 O(n²),但是人家就是优秀,在大多数情况下都比平均时间复杂度为 O(n logn) 的排序算法表现要更好,可是这是为什么呢,我也不知道。好在我的强迫症又犯了,查了 N 多资料终于在《算法艺术与信息学竞赛》上找到了满意的答案:
1010

11-
> 快速排序的最坏运行情况是O(n²),比如说顺序数列的快排。但它的平摊期望时间是O(n log n) ,且O(n log n)记号中隐含的常数因子很小,比复杂度稳定等于O(n log n)的归并排序要小很多。所以,对绝大多数顺序性较弱的随机数列而言,快速排序总是优于归并排序。
11+
> 快速排序的最坏运行情况是 O(n²),比如说顺序数列的快排。但它的平摊期望时间是 O(nlogn),且 O(nlogn) 记号中隐含的常数因子很小,比复杂度稳定等于 O(nlogn) 的归并排序要小很多。所以,对绝大多数顺序性较弱的随机数列而言,快速排序总是优于归并排序。
1212
1313

1414
## 1. 算法步骤

7.heapSort.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
1. 大顶堆:每个节点的值都大于或等于其子节点的值,在堆排序算法中用于升序排列;
66
2. 小顶堆:每个节点的值都小于或等于其子节点的值,在堆排序算法中用于降序排列;
77

8-
堆排序的平均时间复杂度为Ο(nlogn)
8+
堆排序的平均时间复杂度为 Ο(nlogn)。
99

1010

1111
## 1. 算法步骤

9.bucketSort.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
桶排序是计数排序的升级版。它利用了函数的映射关系,高效与否的关键就在于这个映射函数的确定。为了使桶排序更加高效,我们需要做到这两点:
44

55
1. 在额外空间充足的情况下,尽量增大桶的数量
6-
2. 使用的映射函数能够将输入的N个数据均匀的分配到K个桶中
6+
2. 使用的映射函数能够将输入的 N 个数据均匀的分配到 K 个桶中
77

88
同时,对于桶中元素的排序,选择何种比较排序算法对于性能的影响至关重要。
99

0 commit comments

Comments
 (0)