暑期实习后端开发腾讯天美工作室二面面经

面试的岗位调剂为:测开,一面的面经之前发过

电话过来时还在午睡,约的十分钟后开始
面试官很热情,人也挺好的,对实习生都比较照顾,面试过程也基本像聊天一样。
最后明确表达了自己不愿意做测开,更想做后端开发
没有悬念,过了十几分钟流程灰了😅
这次两面一共做了5道题,感觉还是有点多

4月26日   2.30
  1. 自我介绍

  2. 简单介绍一下你的项目吧

  3. 说一下IOC的原理,怎么实现的

  4. 说一下AOP的原理,怎么实现的

  5. 你刚刚提到了类加载器,你能说一下Java有哪些类加载器吗,双亲委派模型,如何破坏双亲委派模型

  6. Java中的OOM你知道哪些呢,都说一下吧

  7. 说一下你熟悉的Java中的容器和保证容器安全的容器

  8. 说一下Java中实现线程间通信的方法
  9. 你对测试开发有什么了解吗

    算法题:
  1. 用队列实现栈
    import java.util.*;
    import java.util.LinkedList;
    
    public class MyStack {
    
        Queue<Integer> queue = new LinkedList<>();
    
        public void put(Integer val) {
            queue.offer(val);
        }
    
        public Integer pop() {
            int size = queue.size();
    
            for (int i = 0; i < size - 1; i++) {
                Integer val = queue.poll();
                queue.offer(val);
            }
    
            return queue.poll();
        }
    
        public Integer top() {
            int size = queue.size();
            Integer t = null;
            for (int i = 0; i < size; i++) {
                Integer val = queue.poll();
                queue.offer(val);
                if (i == size - 1) t = val;
            }
    
            return t;
        }
    
    }


  2. 二叉树后序迭代遍历
    void beh_traverse(BTree pTree)  
    {  
        PSTACK stack = create_stack();  //创建一个空栈  
        BTree node_pop;          //用来保存出栈的节点  
        BTree pCur;              //定义指针,指向当前节点  
        BTree pPre = NULL;       //定义指针,指向上一各访问的节点  
      
        //先将树的根节点入栈  
        push_stack(stack,pTree);    
        //直到栈空时,结束循环  
        while(!is_empty(stack))  
        {  
            pCur = getTop(stack);   //当前节点置为栈顶节点  
            if((pCur->pLchild==NULL && pCur->pRchild==NULL) ||   
                (pPre!=NULL && (pCur->pLchild==pPre || pCur->pRchild==pPre)))  
            {  
                //如果当前节点没有左右孩子,或者有左孩子或有孩子,但已经被访问输出,  
                //则直接输出该节点,将其出栈,将其设为上一个访问的节点  
                printf(”%c ”, pCur->data);  
                pop_stack(stack,&node_pop);  
                pPre = pCur;  
            }  
            else  
            {  
                //如果不满足上面两种情况,则将其右孩子左孩子依次入栈  
                if(pCur->pRchild != NULL)  
                    push_stack(stack,pCur->pRchild);  
                if(pCur->pLchild != NULL)  
                    push_stack(stack,pCur->pLchild);  
            }  
        }  
    } 
#实习##面经##腾讯##Java工程师#
全部评论
成都天美吗?居然还有java?
点赞 回复
分享
发布于 2021-04-26 19:58

相关推荐

点赞 评论 收藏
转发
2 11 评论
分享
牛客网
牛客企业服务