腾讯云后台开发实习生暑期面试

  • 介绍项目
  • 多线程的实现方式,线程的状态
    • new Thread / implements Runnable
  • gc,什么时候gc,内存溢出
    • Java GC
  • Linux指令,怎么查看内存线程使用情况
  • Mysql索引,group by & union
  • TCP的…四次挥手,为什么等待2MSL?
  • 用过哪些大数据框架
  • 怎么判断一棵二叉树是镜像的?
  • 层次遍历,每次取左子树左右结点,右子树右左结点,判断是否相同
  • 栈实现O(1)获得最小的数getMin()
    • 准备两个栈,一个正常栈,一个辅助栈,正常栈做pop和push。辅助栈push更新最小值,pop出正常栈的最小值。
    • 过程很简单,当正常栈push的时候,查看辅助栈的栈顶元素,如果是比辅助栈栈顶还小或者等于,那么更新到栈顶。否则不加如辅助栈。
    • 当正常栈做pop,查看辅助栈栈顶是否相等,相等的话一起pop,否则不动。
    • PS:注意当做push的时候,辅助栈栈顶元素和新元素相等,还是要入栈,因为再做pop把元素出栈后,正常栈其实后面还是有这个元素。
    • 原理:其实就是类似动态规划的原理,辅助栈里的元素,全是到正常栈该元素位置的最小值是谁。所以除非正常栈做出栈弹出到这个值,否则辅助栈的栈顶就是当前的最小值。
  • 1000瓶水,1瓶有毒,一只小白鼠喝了有毒的一周死亡,现给10只小白鼠一周时间,怎么做?
  • 二进制 标记

你可能感兴趣的:(暑期,面试,腾讯,java)