8.3号 一面 45min  时间大概50min 1.自我介绍 2.问一些项目中遇到的问题 3.tcp粘包和拆包了解吗 注意:这个问题问的好像比较频繁!!!  4.问有没有做过网络通信相关的 5.tcp三次握手为什么不是两次握手 6.做一个最小栈的题(算法题) 7.优化空间复杂度(优化)  8.线程池了解吗 9.说一下线程池为什么要手写,还有就是固定线程数会出现什么问题  10.线程池的拒绝策略说一下? 11.非稳定排序算法你找一个,并说一下?   12.为什么区分稳定和非稳定   13.举一个稳定的场景吧? 整体还不错,问题都不难,主要是手撕代码,然后优化!   8.10号 二面 50min   项目   1.自我介绍   2.笔试的项目说一下   3.springboot的项目说一下   4.其他医院如何提交数据的?   5.访问的时候如何定位是哪个微服务?      项目问的还是比较细致的,自己简历上的项目一定要多看看,自己想想面试官可能会问哪些问题。   其他   1.https的客户端和服务端的交互过程   2.图的遍历方式   3.静态方法和非静态方法的区别   3.jvm中的类加载过程   4.初始化过程是指什么?      算法题   用数组实现队列,三个函数,分别是添加add(),出队poll()和获取队中的元素个数getSize()   当队的元素满的时候进行二倍的扩容。 面试的时候只写了大体的框架,说了一下思路。  面试结束后,写完测试了一下。class myqueue {    private int[]date;    //first记录队头位置 size记录队中元素个数 last记录队尾的位置    private int first,size,last;    private int capacity;    //初始化    public myqueue(int capacity){        this.capacity = capacity;        date = new int[capacity];        this.first = 0;        this.size = 0;        this.last = 0;    }    //添加元素    public void add(int x){        //当队列中元素的个数大于容量就进行扩容        if(size>=capacity){            ensureCapacity(2*capacity);            date[last++] = x;            size++;        }// 否则进行插入 操作        else{            //如果最后一个位置等于容量,此时最前面还有多余的位置可以放元素            if(last == capacity){                last = last%capacity;            }            date[last++] = x;            size++;        }    }    //扩容函数    public void ensureCapacity(int newCapacity){        System.out.println("开始扩容");        //保存原来的数组        int []old = date;        //新的容量        date = new int[newCapacity];        capacity = newCapacity;        //旧的数组赋值到新数组        for(int i=0;i<size;i++){            //有可能有些值存在前面的位置里 比如 0 1 2 3 4 此时first为2 last为1             if(first>=size){                first = first%size;            }            date[i] = old[first++];        }        //更想fist和last的位置        first = 0;        last = size;    }    //队头出队    Object poll(){        if(size == 0){            return null;        }else{            int x = date[first];            //更新队头和队中元素个数            first++;            size--;            return x;        }    }    //获取队中的元素个数    int getsize(){        return size;    }}//测试用的public class test1 {    public static void main(String[] args) {        myqueue test = new myqueue(5);        test.add(1);        test.add(2);        test.add(3);        test.add(4);        test.add(5);        Object x = test.poll();        System.out.println(x);        test.add(6);        test.add(7);        System.out.println(test.getsize());    }} 可能已经无了吧,害,最后问面试官自己是不是无了,面试官说他们有个打分排名,如果在他们招的名额以内还有机会。
点赞 5
评论 1
全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务