Vue. Js interview questions

1.冒泡排序

function sort(array){
for(var i=0;i
for(var j=0;j
if(array[j]
var temp=array[j];
array[j]=array[j+1];
array[j+1]=temp;
}
}
}
return array;
}

2.去重

function norepeat(arr){
var arrnew=[];
for(var i=0;i
if(arrnew.indexOf(arr[i])<0){//不包含时为-1
arrnew.push(arr[i])
}
}
return arrnew;
}


function norepeat1(arr) {
var obj = {};
var newArr = [];
for(var i = 0; i < arr.length; i++) {
if(obj[arr[i]] == undefined) {
newArr.push(arr[i]);
obj[arr[i]] = 1;
}
}
return newArr;
}


function noreat2(arr){
for(var i=0;i
for(var j=i+1;j
if(arr[i]==arr[j]){
arr.splice(j,1);
j--;
}
}
}
return arr;
}


function norepeat3(arr){
arr.sort();
for(var i = 0; i < arr.length-1;i++){
if(arr[i]==arr[i+1]){
arr.splice(i,1);
i--;
}
}
return arr;
}


function norepeat4(arr){
for(var i=0; i
for(j=i+1;j
if(arr[i]==arr[j]){
arr[j]=0;
}
}
if(arr[i]==0){
continue;
}else{
newArr.push(arr[i]);
}
}
return arr;
}//用这个方法的条件是arr中不含0 这个项

3.快速排序

function quickSort(arr){
var len =arr.length,index,pivot,left=[],right=[];
var num=0;
if(len<=1) return arr;
index=Math.floor(len/2);
pivot=arr.splice(index,1);
len-=1;
for(var i=0;i
num++;
if(pivot>arr[i]){
left.push(arr[i]);
}else{
right.push(arr[i]);
}
}
return quickSort(left).concat(pivot,quickSort(right));
}
比如:array=[12,13,5,8,90,38,45,67,75];
快排运算了8次;?
冒泡运算了36次;8+7+6+5+4+3+2+1=36

你可能感兴趣的:(Vue. Js interview questions)