<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>排序算法</title>
</head>
var arr=[3,5,2,4,6,1];
function maopao(a){
for(var i=1;i< a.length;i++){ //遍历整体arr
for(var j=0;j< a.length-1;j++){ //
if(a[j]>a[j+1]){ //若大于则调换位置
var newarr=a[j]; //第一个数赋值给newarr
a[j]=a[j+1]; //第二个数赋值给第一个数
a[j+1]=newarr; //第一个数赋即newarr值给第二个数
}
}
}
console.log(arr);
}
maopao(arr);
var quick = function(arr1){
if(arr1.length<=1){
return arr1;
}
var ji =Math.floor(arr1.length/2); //位置 4
var jizhun = arr1.splice(ji,1); //选取基准并分成两个数组 [4]
var left =[];
var right =[];
for(var i=0;i< arr1.length;i++){
if(arr1[i]<jizhun){
left.push(arr1[i]);
}
else {
right.push(arr1[i]);
}
}
return quick(left).concat(jizhun,quick(right));
// var a= quick(left).concat([jizhun],quick(right));
};
console.log(quick(arr1));
//递归 在函数内部调用自身 ,arguments.callee调用自身函数
function digui(num){
if(num!=1){
return num*digui(num-1);
}
else{
return num;
}
}
console.log(digui(6));
</script>
</body>
</html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>排序算法</title>
</head>
<body>
<script>
var arr=[3,5,2,4,6,1];
function maopao(a){
for(var i=1;i< a.length;i++){ //遍历整体arr
for(var j=0;j< a.length-1;j++){ //
if(a[j]>a[j+1]){ //若大于则调换位置
var newarr=a[j]; //第一个数赋值给newarr
a[j]=a[j+1]; //第二个数赋值给第一个数
a[j+1]=newarr; //第一个数赋即newarr值给第二个数
}
}
}
console.log(arr);
}
maopao(arr);
//快速排序
var quick = function(arr1){
if(arr1.length<=1){
return arr1;
}
var ji =Math.floor(arr1.length/2); //位置 4
var jizhun = arr1.splice(ji,1); //选取基准并分成两个数组 [4]
var left =[];
var right =[];
for(var i=0;i< arr1.length;i++){
if(arr1[i]<jizhun){
left.push(arr1[i]);
}
else {
right.push(arr1[i]);
}
}
return quick(left).concat(jizhun,quick(right));
// var a= quick(left).concat([jizhun],quick(right));
};
console.log(quick(arr1));
//递归 在函数内部调用自身 ,arguments.callee调用自身函数
function digui(num){
if(num!=1){
return num*digui(num-1);
}
else{
return num;
}
}
console.log(digui(6));
</script>
</body>
</html>