码迷,mamicode.com
首页 > 编程语言 > 详细

常规现场面试机智应对小算法(总结个人面试大佬们临时写的小算法)

时间:2019-07-19 21:18:33      阅读:136      评论:0      收藏:0      [点我收藏+]

标签:统计   random   char   bre   个数   controls   isp   字符   sub   

1.判断一个数字是否是回文

function Check(str){
    if(!str) return ‘‘
    return str === Array.from(str).reverse().join(‘‘)
}

2.统计一个字符串出现最多的字母

function count(str) {
  let hash = {}, sub = 0
  while (1) {
    let c = str.charAt(sub)
    if (!c) break
    !hash[c] ? hash[c] = 1 : hash[c]++
    sub++
  }
  return hash
}

 3.快速找出数组中的最大项

const a = [1,3,5,6,9,11]

Math.max(...a) // 11 

Math.min(...a) // 1

 4.随机生成制定长度的字符串

Tip:只能是Math.random()*len ,不能是len+1, 

Q:如何能保证不重复??hash值怎么出来

function randomStr(n) {
  let base = ‘abcdefghijklmnopqistuvwxyz9876543210‘, len = base.length, str = ‘‘;
  for (let i = 0; i < n; i++) {
    str += base.charAt(Math.floor(Math.random() * len))
  }
  return str;
}
randomStr(10) //1k82a33xmp

 

常规现场面试机智应对小算法(总结个人面试大佬们临时写的小算法)

标签:统计   random   char   bre   个数   controls   isp   字符   sub   

原文地址:https://www.cnblogs.com/ajaxkong/p/11215547.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!