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 相关文章推荐
JavaScript Event学习第二章 Event浏览器兼容性
Feb 07 Javascript
字符串的replace方法应用浅析
Dec 06 Javascript
javascript中 try catch用法
Aug 16 Javascript
vue.js表格组件开发的实例详解
Oct 12 Javascript
jQuery制作全屏宽度固定高度轮播图(实例讲解)
Jul 08 jQuery
JavaScript简单实现关键字文本搜索高亮显示功能示例
Jul 25 Javascript
关于单文件组件.vue的使用
Sep 20 Javascript
JavaScript使用闭包模仿块级作用域操作示例
Jan 21 Javascript
基于JS实现一个随机生成验证码功能
May 29 Javascript
react-native聊天室|RN版聊天App仿微信实例|RN仿微信界面
Nov 12 Javascript
vscode中Vue别名路径提示的实现
Jul 31 Javascript
Vue自定义多选组件使用详解
Sep 08 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
一个odbc连mssql分页的类
2006/10/09 PHP
php 图像函数大举例(非原创)
2009/06/20 PHP
phpQuery占用内存过多的处理方法
2013/11/13 PHP
Yii中CGridView关联表搜索排序方法实例详解
2014/12/03 PHP
PHP入门教程之面向对象基本概念实例分析
2016/09/11 PHP
JS 强制设为首页的代码
2009/01/31 Javascript
javascript radio 联动效果
2009/03/04 Javascript
同一个表单 根据要求递交到不同页面的实现方法小结
2009/08/05 Javascript
关于javascript中的typeof和instanceof介绍
2012/12/04 Javascript
js动态控制table的tr、td增加及删除的具体实现
2014/04/30 Javascript
jquery+css3打造一款ajax分页插件(自写)
2014/06/18 Javascript
使用jQueryMobile实现滑动翻页效果的方法
2015/02/04 Javascript
基于JS实现Android,iOS一个手势动画效果
2016/04/27 Javascript
浅谈时钟的生成(js手写简洁代码)
2016/08/20 Javascript
使用纯JS代码判断字符串中有多少汉字的实现方法(超简单实用)
2016/11/12 Javascript
JS中利用localStorage防止页面动态添加数据刷新后数据丢失
2017/03/10 Javascript
AngularJS改变元素显示状态
2017/04/20 Javascript
Vue自定义弹窗指令的实现代码
2018/08/13 Javascript
微信小程序实现bindtap等事件传参
2019/04/08 Javascript
layui之数据表格--与后台交互获取数据的方法
2019/09/29 Javascript
vue项目实现多语言切换的思路
2020/09/17 Javascript
antd Select下拉菜单动态添加option里的内容操作
2020/11/02 Javascript
[42:52]IG vs VGJ.T 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
python encode和decode的妙用
2009/09/02 Python
python里将list中元素依次向前移动一位
2014/09/12 Python
Windows和Linux下Python输出彩色文字的方法教程
2017/05/02 Python
python实现windows下文件备份脚本
2018/05/27 Python
python中property属性的介绍及其应用详解
2019/08/29 Python
python3.7 openpyxl 删除指定一列或者一行的代码
2019/10/08 Python
技校生自我鉴定
2013/12/08 职场文书
国家助学金获奖感言
2014/01/31 职场文书
怀念母亲教学反思
2014/04/28 职场文书
计算机实训心得体会
2016/01/14 职场文书
python开发实时可视化仪表盘的示例
2021/05/07 Python
Python如何让字典保持有序排列
2022/04/29 Python
Linux磁盘管理方法介绍
2022/06/01 Servers