javascript获取重复次数最多的字符


Posted in Javascript onJuly 08, 2015

javascript获取重复次数最多的字符

/**
  取出字符串中重复字数最多的字符
*/
var words = 'sdfghjkfastgbyhnvdstyaujskgfdfhlaa';  
 //创建字符串
var word,  











 //单个字符
  length; 











 //该字符的长度
//定义输出对象
var max = {
  wordName : '', 









 //重复次数最多的字符
  wordLength : 0 









 //重复的次数
};
//递归方法,传入字符串
(function(words) {
  if (!words) return;         //如果字符串已经变空则返回,结束递归
  word  = words[0];         //取出字符串中的第一个字符
  length = words.length;         //将length设为当前字符串长度
  words  = words.replace(new RegExp(word, 'g'), ''); //返回将字符串剔除当前字符的剩余字符串
  length = length - words.length;      //重设length为当前字符在字符串中的长度
  if (length > max.wordLength)       //如果该字符重复次数大于maxLength,则重设maxLength为当前字符重复次数
    max = {               //重设对象的值
      wordName  : word,            
      wordLength : length       
    };              
  arguments.callee(words);        //递归调用,传入剩余字符串
})(words);
console.log(max.wordName+"\n"+max.wordLength);     //递归结束后输出结果

今天上午偶然看见这样的一个问题.看到网上大部分是用两个循环做出来的.然后自己用递归写了一下

思路是

每递归一次.取出第一个字符.从字符串中剔除相同符号的字符,并拿之前的字符串长度减去剔除后的字符串长度.

得到的是该字符串中当前字符所重复次数.

判断该字符重复次数是否大于当前输出对象中存储的maxLength.

如true,则更新

然后进入下次递归,直到字符串被替换完,终止

输出对象中存储的就是次数最多的字符以及重复的次数

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
js 时间函数应用加、减、比较、格式转换的示例代码
Aug 23 Javascript
php跨域调用json的例子
Nov 13 Javascript
javascript放大镜效果的简单实现
Dec 09 Javascript
做web开发 先学JavaScript
Dec 12 Javascript
jQuery实现鼠标经过弹出提示信息的地图热点效果
Aug 07 Javascript
java中String类型变量的赋值问题介绍
Mar 23 Javascript
全面了解js中的script标签
Jul 04 Javascript
BootStrap下拉框在firefox浏览器界面不友好的解决方案
Aug 18 Javascript
JS实现的点击表头排序功能示例
Mar 27 Javascript
Vue头像处理方案小结
Jul 26 Javascript
搭建基于express框架运行环境的方法步骤
Nov 15 Javascript
js作用域和作用域链及预解析
Apr 11 Javascript
javascript连续赋值问题
Jul 08 #Javascript
JavaScript中函数(Function)的apply与call理解
Jul 08 #Javascript
JavaScript forEach()遍历函数使用及介绍
Jul 08 #Javascript
JavaScript中调用函数的4种方式代码实例
Jul 08 #Javascript
JavaScript对象属性检查、增加、删除、访问操作实例
Jul 08 #Javascript
jquery获取多个checkbox的值异步提交给php
Jul 07 #Javascript
浅谈jQuery中setInterval()方法
Jul 07 #Javascript
You might like
php简单创建zip压缩文件的方法
2016/04/30 PHP
PHP+原生态ajax实现的省市联动功能详解
2017/08/15 PHP
node在两个div之间移动,用ztree实现
2013/03/06 Javascript
jQuery操作Select选择的Text和Value(获取/设置/添加/删除)
2013/03/06 Javascript
Javascript小技巧之生成html元素
2014/05/15 Javascript
js改变css样式的三种方法推荐
2016/06/28 Javascript
js遍历map javaScript遍历map的简单实现
2016/08/26 Javascript
js拼接html字符串的注意事项
2016/10/13 Javascript
javascript 数据存储的常用函数总结
2017/06/01 Javascript
Node.js开发第三方微信公众平台
2017/06/05 Javascript
详解10分钟学会vue滚动行为
2017/09/21 Javascript
本地搭建微信小程序服务器的实现方法
2017/10/27 Javascript
IE11下使用canvas.toDataURL报SecurityError错误的解决方法
2017/11/19 Javascript
angularjs http与后台交互的实现示例
2018/12/21 Javascript
VUE简单的定时器实时刷新的实现方法
2019/01/20 Javascript
Vue递归组件+Vuex开发树形组件Tree--递归组件的简单实现
2019/04/01 Javascript
layui前端时间戳转化实例
2019/11/15 Javascript
vue实现评价星星功能
2020/06/30 Javascript
[43:24]完美世界DOTA2联赛PWL S3 INK ICE vs DLG 第二场 12.12
2020/12/17 DOTA
[16:01]夜魇凡尔赛茶话会 第二期01:你比划我猜
2021/03/11 DOTA
python 生成目录树及显示文件大小的代码
2009/07/23 Python
python实现多线程行情抓取工具的方法
2018/02/28 Python
Python字符串逆序输出的实例讲解
2019/02/16 Python
Python3.5内置模块之shelve模块、xml模块、configparser模块、hashlib、hmac模块用法分析
2019/04/27 Python
OpenCV搞定腾讯滑块验证码的实现代码
2019/05/18 Python
win10系统Anaconda和Pycharm的Tensorflow2.0之CPU和GPU版本安装教程
2019/12/03 Python
Python无头爬虫下载文件的实现
2020/04/02 Python
详解Windows下PyCharm安装Numpy包及无法安装问题解决方案
2020/06/18 Python
Python下载网易云歌单歌曲的示例代码
2020/08/12 Python
css3新增颜色表示方式分享
2014/04/15 HTML / CSS
美国钻石商店:Zales
2016/11/20 全球购物
Bonprix法国:时尚、鞋子、家居
2020/12/29 全球购物
财经学院自荐信范文
2014/02/02 职场文书
生日主持词
2014/03/20 职场文书
小学班主任事迹材料
2014/12/17 职场文书
小学体育队列队形教学反思
2016/02/16 职场文书