【面经】手撕代码系列

手撕代码面试题汇总

1. 必备技能

  • 《剑指offer》66题
  • leetcode medium难度,越多越好

 

2.面试中问到的问题

  • 求n个数里面前k个最大的数(除了快排,考虑其他方法)
  • 给定两个字符串a和b(长度超过100w),在字符类型上b是a的子集,求b在a字符类型上的补集;
  • 给定正整数N, 返回小于等于N且至少有一位重复数字的正整数的个数;
  • 电话号码组合。下图是一个手机按键的样例,每一个数字包含一些字母。比如字母“A”可以通过按一次“2”得到,字母“B”可以通过按两次“2”得到,以此类推。当给定一个数字字符串,我们也可以得到相应的映射,比如“22”, 代表字母组成的可能性是[“AA”, “B”]。要求:输入为一个数字字符串,例如”2321241499844211”。输出为可能代表的所有字母组合。
  • 给定两矩形的左上角和右下角坐标,求两矩形的重叠区域面积(overlap),若不重叠,返回0。(其实就是计算IOU)。
  • 清除32位整数的指定位。
  • (智力题)共有36颗棋子,两个人轮流拿棋子,每次只能拿1,2,4颗棋子,拿到最后一颗的输掉。请问先拿棋子的人能否保证一定能赢(高通笔试)
  • 猫抓老鼠,猫速度V,老鼠速度V/4。猫在圆周上运动,只能在圆周上运动,但可以随时改变方向。老鼠在圆心,可以在任意范围内运动,问老鼠以什么路径能逃出这个圆(高通笔试)
  • 现在有包含很多个样本数据的数组,现在对这些数进行多次有放回采样,但每个数都有自己的采样概率,这个概率存在另外一个数组里面,总概率是1,问怎么实现这个采样过程。(常数时间解法)
  • 一个圆形的时钟,一个点从12点出发,每秒可以顺时针走一步也可以逆时针走一步,问N秒后回到12点有多少种走法 (回溯法)

 

3.剑指offer或者leetcode常见题

  1. 二叉树前序遍历,中序遍历(递归非递归),重建二叉树
  2. 判断二叉树结构是否相同
  3. 找出一颗完全二叉树最后一个节点,时间复杂度要求 logN的平方
  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值