一、快速排序
< script>
function rec ( arr ) {
var left = [ ]
var right = [ ]
var mid = arr[ 0 ]
if ( arr. length == 0 || arr. length == 1 ) {
return arr
}
for ( var i = 1 ; i < arr. length; i++ ) {
if ( arr[ i] < mid) {
left. push ( arr[ i] )
} else {
right. push ( arr[ i] )
}
}
return [ ... rec ( left) , mid, ... rec ( right) ] ;
}
var arr = [ 4 , 8 , 1 , 43 , 53 , 22 , 11 , 0 ] ;
var res = rec ( arr) ;
res. forEach ( ( n, i ) => {
this [ i] = n;
} )
console. log ( res, 'res------' )
</ script>
二、选择排序
< script>
var arr = [ 4 , 8 , 1 , 43 , 53 , 22 , 11 , 0 ] ;
var temp
for ( var i = 0 ; i < arr. length- 1 ; i++ ) {
var minindex = i
for ( var j = i; j < arr. length; j++ ) {
if ( arr[ j] < arr[ minindex] ) {
minindex = j
}
}
if ( i != minindex) {
temp = arr[ minindex]
arr[ minindex] = arr[ i]
arr[ i] = temp
}
}
console. log ( arr, 'arr-----' )
</ script>
三、冒泡排序
< script>
var arr = [ 4 , 8 , 0 , 1 , 43 , 53 , 22 , 11 , 0 ]
var temp
for ( var i= 0 ; i< arr. length- 1 ; i++ ) {
for ( var j= i+ 1 ; j< arr. length; j++ ) {
if ( arr[ i] > arr[ j] ) {
temp = arr[ i]
arr[ i] = arr[ j]
arr[ j] = temp
}
}
}
console. log ( arr, 'arr-----' )
</ script>