摘要:找出一个字符串中出现次数最多的字符并统计次数看到这个题目时,第一个想到的是怎么进行字符匹配,拆开字符串再通过循环用进行匹配,同时做个计数器进行累加。
找出一个字符串中出现次数最多的字符并统计次数
看到这个题目时,第一个想到的是怎么进行字符匹配,拆开字符串再通过循环用 indexOf 进行匹配,同时做个计数器进行累加。
写 indexOf 的时候又突然想到,好像能进行 match ,直接拿到匹配结果,但试了一下只能匹配到第一个(all 呢?是不是有 matchAll?)。
随后查了ES6的资料 ECMAScript 6 入门
看到这个感觉这个题目简单了(但实际上还有点曲折)。
。。。
可惜现在还用不了。。。
改用 match 组合 /g 得到了需要的结果:
let str="hajjfhlhhff"; let _arr = []; // 存储统计数用 let tmp = []; // 临时存储其中一个字母的数量 for (let val of str) { tmp = str.match(eval("/"+val+"/g")); // tmp 的长度就是该字母重复出现的次数 if (_arr[tmp.length] === undefined) { _arr[tmp.length] = val; }else if ( !_arr[tmp.length].includes(val)){ // 把相同数量的字母拼在一起显示 _arr[tmp.length] = val + "," + _arr[tmp.length]; } } // _arr 的索引位置就是字母重复出现的次数 console.log(_arr);
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/105797.html
摘要:扩展字符串中出现次数最对的字符是哪一项并统计实例方法可返回指定位置的字符。请注意,并没有一种有别于字符串类型的字符数据类型,所以返回的字符是长度为的字符串。语法注释字符串中第一个字符的下标是。如果参数不在与之间,该方法将返回一个空字符串。 实例1 var a,sum = 0; var obj = {}; var arr = [1,3,7,3,1,8,1,10,6,1]; for(va...
摘要:答案使用,申请一个长度为类型的,每个位置只表示或,该数组占用空间约。遍历亿个数,当前数为,落在区间,对应。 过滤100亿黑名单 题目 假设有100亿个URL的黑名单,每个URL最多占用64B,设计一个过滤系统,判断某条URL是否在黑名单里。 要求 不高于万分之一的判断失误率;额外内存不超过30GB 答案 100亿个64B的URL需要640GB的内存,显然直接存哈希表不合理。考虑布隆过滤...
摘要:具体做法新建一个空对象遍历给定的字符串接下来就是最重要的把字符作为值,对应次数作为添加给。判断是否存在当前循环的字符,有则让即次数,否则把当前项作为添加给。出现次数最多的字符为和,出现次数为次。 分析 题目的意思大致就是找出每个字符出现的次数,然后比较大小。那么每个字符都应该对应它出现的次数。既然是一一对应的,那我们就想到用对象的key和value来储存字符和其出现的次数。 具体做法 ...
摘要:问题中有这么一个问题,给定一个序列,找出该序列出现次数最多的元素。例如统计出中出现次数最多的元素初步探讨模块的类首先想到的是模块的类,具体用法看这里具体用法看这里具体用法看这里,重要的事情强调三遍。 问题 《Python Cookbook》中有这么一个问题,给定一个序列,找出该序列出现次数最多的元素。例如: words = [ look, into, my, eyes, look...
摘要:给定一个字符数组,例如找出数组中出现次数最多的字符,如果存在相同次数的字符,取出现较早者。 给定一个字符数组,例如char[] chars = { a, b, b, b, b, c, a, a, a};找出数组中出现次数最多的字符,如果存在相同次数的字符,取出现较早者。一个问题的解决方案有多种: 利用数据结构的特性,链表保证了插入顺序,Map正是我们想要的字符与出现次数对应关系的映...
阅读 2208·2021-09-30 09:47
阅读 959·2021-08-27 13:01
阅读 2958·2019-08-30 15:54
阅读 3684·2019-08-30 15:53
阅读 825·2019-08-29 14:07
阅读 710·2019-08-28 18:16
阅读 795·2019-08-26 18:37
阅读 1405·2019-08-26 13:27