版权声明:本博文,由(曾梦想仗剑走天涯,现如今脱发眼已瞎)的Anles编写,可随意转载,你喜欢就好。 https://blog.csdn.net/qq_42926373/article/details/84067251
快排
// 基本快排
function quick(arr){
if(arr.length <=1) return arr;
var left = [];
var right = [];
var base = arr[0];
for(var i = 1;i<arr.length;i++){
if(arr[i] > base){
right.push(arr[i])
}else{
left.push(arr[i])
}
}
return quick(left).concat(base,quick(right))
}
console.log(quick([5,52,5,41,8,4,8,7,1,58,4,544,7,4,5,1]))
冒泡
function Bubble(arr){
if(arr.length <= 1) return arr;
var len = arr.length;
for(var i=0;i<len;i++){
for(var j=i+1;j<len;j++){
if(arr[i] > arr[j]){
var temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
return arr;
}
console.log(Bubble([5,52,5,41,8,4,8,7,1,58,4,544,7,4,5,1]))
二分查找
// 有序查找
function erfenIndex(target,arr,start,end){
var start = start || 0;
var end = end || arr.length;
if(start > end)return -1;
var curr = parseInt(start + ( end - start ) / 2);
if(target == arr[curr]){
return curr;
}else if(target > arr[curr]){
return erfenIndex(target,arr,curr+1,end)
}else{
return erfenIndex(target,arr,start,curr-1)
}
}
获取字符串重复次数最多的字符和次数
function maxShowNum(str){
var obj = {};
var key;
for(var i=0;i<str.length;i++){
key = str[i]
if(obj[key]){
obj[key]++;
}else{
obj[key] = 1;
}
}
var max = 0;
var max_key;
for(var i in obj){
if(max < obj[i]){
max = obj[i];
max_key = i;
}
}
return {
[max_key]:max
}
}
var str = "zhkzzzzzswnhwkluawjkanjklwhwkkk";
console.log(maxShowNum(str))