[Algorithm] Max Chars Problem

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
// --- Directions
// Given a string, return the character that is most
// commonly used in the string.
// --- Examples
// maxChar("abcccccccd") === "c"
// maxChar("apple 1231111") === "1"
 
function maxChar(str) {
  let m = {},
    max = -1,
    result = null;
 
  for (let char of str) {
    m[char] = m[char] + 1 || 1;
  }
 
  for (let [key, count] of Object.entries(m)) {
    max = Math.max(max, count);
    if (max === count) {
      result = key;
    }
  }
 
  return result;
}
 
module.exports = maxChar;

  

1
2
3
4
5
6
7
8
9
10
11
12
13
14
const maxChar = require('./index');
 
test('maxChar function exists', () => {
  expect(typeof maxChar).toEqual('function');
});
 
test('Finds the most frequently used char', () => {
  expect(maxChar('a')).toEqual('a');
  expect(maxChar('abcdefghijklmnaaaaa')).toEqual('a');
});
 
test('Works with numbers in the string', () => {
  expect(maxChar('ab1c1d1e1f1g1')).toEqual('1');
});

  

posted @   Zhentiw  阅读(188)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
历史上的今天:
2017-05-31 [PostgreSQL] Use Foreign Keys to Ensure Data Integrity in Postgres
2017-05-31 [PostgreSQL] Ensure Uniqueness in Postgres
2017-05-31 [RxJS] Hot Observable, by .share()
2016-05-31 [RxJS] Transformation operator: repeat
2016-05-31 [RxJS] Error handling operator: catch
2016-05-31 [Angular 2] Keynote: Lazy Routing -- NGCONF
点击右上角即可分享
微信分享提示