一:冒泡排序
function
bubbleSort(
array) {
var i
=
0, len
= array.length, j, d;
for (; i
< len; i
++) {
for (j
=
0; j
< len; j
++) {
if (array[i]
< array[j]) {
d
= array[j]; array[j]
= array[i]; array[i]
= d;
}
}
}
return array;
}
var array1
= [
2,
5,
1,
9];
bubbleSort(array1)
========》[1,2,5,9]
二:利用sort进行排序
function
useSort(
array) {
return array.
sort(
function (
a,
b) {
return a
- b; });
}
var array1
= [
2,
5,
1,
9];
useSort(array1)
三:基准排序
在数据集中,选择一个元素作为基准,所有小于这个基准的,移到左边,大于这个基准的,移到右边。
对基准左右两边的两个子集,不断重复选择基准,移动的操作,直到所有子集只剩下一个元素为止。
f
unction
quickSort(
arr) {
if (arr.length
<=
1) {
return arr };
var pivotIndex
=
Math.
floor(arr.length
/
2);
var pivot
= arr.
splice(pivotIndex,
1)[
0];
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]);
}
}
return
quickSort(left).
concat([pivot],
quickSort(right));
}
var arr
=[
1,
4,
2,
20,
7,
3]
quickSort(arr)