`
deng131
  • 浏览: 673609 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

字符串中不同字母出现次数

阅读更多
给定随机字符串'adadfdfseffserfefsefseeffffftsdg',求每个字母在字符串中出现次数?

js实现:
var str = "adadfdfseffserfefsefseeffffftsdg";

(function(str){
    var l = str, result = {};
    while(l){ // if this l exists
      var _st = l.substr(0,1);
      var m = l.replace(new RegExp(_st,'gi'),'');
      result[_st] = l.length - m.length;
      l = m;   
    }
    return result;
})(str);

另外相同问题:
一个长度为十万的字符串数组,求数组其中相同字符串个数?
在不考虑效率情况下(实测长度为1千万数组在循环情况下执行时间小于1s),我的思路是:
先将数组转化为字符串排序sort(function(a,b){return a.localComapre(b);}),然后join(','),最后用上述方法去取得不同字符串个数replace(/\b\a(\,|\b)/g,'')。具体实现希望高手指点?


参考:
http://www.planabc.net/2007/09/05/which_letter_most_times/
2
1
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics