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

Posted ajaxkong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了常规现场面试机智应对小算法(总结个人面试大佬们临时写的小算法)相关的知识,希望对你有一定的参考价值。

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

 

以上是关于常规现场面试机智应对小算法(总结个人面试大佬们临时写的小算法)的主要内容,如果未能解决你的问题,请参考以下文章

结合Java面试题,深入理解Java

花了3个达不溜!让隔壁小姐姐从圈内大佬手中拿到“阿里面试官手册”,看完之后我大呼“不亏”!

Android 2020-2021年 最新面试题(附个人面试经历)

应对一线互联网公司的程序员面试,基本八种排序算法需掌握哪些?

面试专用Lua基础知识总结!

用ES6巧妙的解决传统面试中的算法小问题!