算法 3道 (只用了一种方法,每篇会有3题)
//1.考察闭包
var a=2;
var func= (function() {
var a=10;
return function() {
console.log(a++)
}
})()
func()
func()
//2.考察算法 求最大值
var arr= [1,5,2,4,14,4,12,12,14];
varmax=arr[0]
console.log(max)
for(vari=0;i
if(arr[i+1]){
if(arr[i+1] >=max) {
max=arr[i+1]
}
}
}
console.log(max)
//3.考察算法 出现最多的字母
varstr="aaaabbbdddbbaabbccc"
functiongetMost1(str){
varmost= [],num=0;
while( str !=''){
varori= str,
target= str.substr(0,1),//目标字符
re=target;
if(/[\$\(\)\*\+\.\?]/.test(target))re='\\'+re;
// RegExp 对象
// RegExp 对象表示正则表达式,它是对字符串执行模式匹配的强大工具。
str = str.replace(newRegExp(re,'g'),'');
// var myReg=new RegExp(“[dfs]”,“g”)//表示检索全部d f s
diff=ori.length- str.length;//计算目标字符数目
if(diff>num) {
num=diff;
most= [target];
}else if(diff==num) {
most.push(target);
}
}
returnnum+': '+most;
}
console.log(getMost1(str))
网友评论