“计算出字符串中出现次数最多的字符是什么,出现了多少次?”

看到这个需求,我想大多数人应该首先想到的是转换成数组,再做处理,当然是可以解决问题的,然后这里提供一个巧妙的算法设计,无需转数组,可以很快解决问题,代码如下:

var str = "adadfdfseffserfefsefseeffffftsdg"; 
var maxLength = 0; 
var result = ""; 
while(str!=''){ 
	oldStr = str; 
	getStr = str.charAt(0);
	str = str.replace(new RegExp(getStr,"g"),"");
	if( oldStr.length-str.length > maxLength){
		maxLength = oldStr.length-str.length; 
		result = getStr + "=" + maxLength; 
	}
}
alert(result);

相关文章: