From 6f0e2a2452e1051c0835dea6a3be1537dafec8ff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C2=B2=C2=B9=E5=B8=A6=E4=BD=A0=E5=8E=BB=E6=97=85=E8=A1=8C?= =?UTF-8?q?=E2=99=AC=20=E2=99=AB=E2=99=AC?= Date: Wed, 26 Dec 2018 14:51:52 +0800 Subject: [PATCH 1/3] Update 4.shellSort.md --- 4.shellSort.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/4.shellSort.md b/4.shellSort.md index 0406030..3650268 100644 --- a/4.shellSort.md +++ b/4.shellSort.md @@ -1,3 +1,5 @@ + +https://www.cnblogs.com/onepixel/articles/7674659.html # 希尔排序 希尔排序,也称递减增量排序算法,是插入排序的一种更高效的改进版本。但希尔排序是非稳定排序算法。 From 96ad68ab3c83dd907d015e6735327fdd693bbe37 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C2=B2=C2=B9=E5=B8=A6=E4=BD=A0=E5=8E=BB=E6=97=85=E8=A1=8C?= =?UTF-8?q?=E2=99=AC=20=E2=99=AB=E2=99=AC?= Date: Wed, 2 Jan 2019 11:26:34 +0800 Subject: [PATCH 2/3] Update 6.quickSort.md --- 6.quickSort.md | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/6.quickSort.md b/6.quickSort.md index 1c81c59..75d4682 100644 --- a/6.quickSort.md +++ b/6.quickSort.md @@ -89,6 +89,25 @@ function quickSort2(arr, low, high) { ``` +var quickSort = function(arr) { +  if (arr.length <= 1) {//如果数组长度小于等于1无需判断直接返回即可 + return arr; + } +  var pivotIndex = Math.floor(arr.length / 2);//取基准点 +  var pivot = arr.splice(pivotIndex, 1)[0];//取基准点的值,splice(index,1)函数可以返回数组中被删除的那个数 +  var left = [];//存放比基准点小的数组 +  var right = [];//存放比基准点大的数组 +  for (var i = 0; i < arr.length; i++){ //遍历数组,进行判断分配 +    if (arr[i] < pivot) { +      left.push(arr[i]);//比基准点小的放在左边数组 +    } else { +      right.push(arr[i]);//比基准点大的放在右边数组 +    } +  } + //递归执行以上操作,对左右两个数组进行操作,直到数组长度为<=1; +  return quickSort(left).concat([pivot], quickSort(right)); +};
使用的时候,直接调用quickSort()就行了。 + ## 4. Python 代码实现 From 0286e281c9e852253dec07a15e8d3cbd801f65a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C2=B2=C2=B9=E5=B8=A6=E4=BD=A0=E5=8E=BB=E6=97=85=E8=A1=8C?= =?UTF-8?q?=E2=99=AC=20=E2=99=AB=E2=99=AC?= Date: Wed, 2 Jan 2019 11:27:07 +0800 Subject: [PATCH 3/3] Update 6.quickSort.md --- 6.quickSort.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/6.quickSort.md b/6.quickSort.md index 75d4682..3390b80 100644 --- a/6.quickSort.md +++ b/6.quickSort.md @@ -87,7 +87,7 @@ function quickSort2(arr, low, high) { return arr; } -``` + var quickSort = function(arr) {   if (arr.length <= 1) {//如果数组长度小于等于1无需判断直接返回即可 @@ -106,8 +106,10 @@ var quickSort = function(arr) {   } //递归执行以上操作,对左右两个数组进行操作,直到数组长度为<=1;   return quickSort(left).concat([pivot], quickSort(right)); -};
使用的时候,直接调用quickSort()就行了。 +}; +
使用的时候,直接调用quickSort()就行了。 +``` ## 4. Python 代码实现