爱奇艺2020校招Java方向笔试题
一、时间复杂度简单计算,答案为O(nm)
二、求递归方程T(n)=4T(n/2)+n 的解 (递归表达式的渐进复杂度分析)
三、下列关于动态规划算法说法错误的是()
当某阶段的状态确定后,当前的状态是对以往决策的总结并且直接影响未来的决策
(难道是间接影响?)
四、广度优先遍历的基本理解
V1,V2,V5,V4,V3,V6
五、队列的基本理解
中缀表达式转后缀表达式(栈的应用)
六、二叉树的遍历
后序遍历按照”左右中“的顺序遍历就好
GDBHEFCA
七、折半查找法对带查找列表的要求为
必须采用顺序存储结构、必须按关键字大小有序排列
八、一组N个站点共享一个30Kbps的纯ALOHA信道, 每个站点平均每100s输出一个2000bit的帧。试求出N的最大值( )
首先ALOHA信道的最高利用率为18.4%,那么30kbps x 0.184 =5.52kbps
2000bit÷100s=20bps,N=5520bps÷20bps=276
九、在Linux系统中,某文件权限的分数是754,则以下说法错误的是( )。
3个数字对应3种用户的权限:文件所有者、同组用户、其他用户
在linux中
r(read) 权限数值为4 w(wtite) 权限数值为2 e(execute) 权限数值为1
7表示4+2+1 即可读可写可执行 为文件所有者权限
5表示4+1 即可读可执行 为同组用户权限
4表示4 即可读 为其他用户权限
十、
将Id列设置为主键(增加索引)
为了提高查询速度,让变长的列定长
Info列放在单独的一张表中(优化数据库存储性能)
十一、在Java线程中可以通过setDaemon(true);设置线程为守护线程,可以使用join()合并线程。如何正确使用两个方法()
在启动线程start()前使用setDaemon(true);
thread = new Thread(this);
thread.setDaemon(true);
thread.start();
t.join方法是将当前线程加入t的wait队列,等到t执行完成再唤醒当前线程.
十二、
a 对象可以调用move方法,输出为:the dog can run
b 对象不能调用bark方法。(需要((Dog)b).bark())
十三、
Math.floor向下取整 Math.ceil向上取整 且为double类型小数点依然存在
十四、
Arrays.sort()默认为升序排序
十五、
千万不要忘记前面的已经修改过了
如mat[0][0]=mat[0][5](11),mat[0][5]=mat[0][0](11)
十六、
十七、下面关于异常的描述正确的是()
Throwable是所有异常的根
异常分为Error和EXception
有一部分异常编译器会程序员检查并处理
(所有异常类都是从java.lang.Exception类继承的子类,而Exception类又是Throwable类的子类,Throwable类除Exception之外,还有个子类Error.)
十八、关于多线程,以下说法正确的是()
并发: 在某一时刻只能执行一个进程,在一段时间中多个进程轮换执行,宏观上这段时间内有多个进程一起执行.
并行: 在某一时刻可以多个进程一起执行.
Java中线程的创建有两种方式:
1. 通过继承Thread类,重写Thread的run()方法,将线程运行的逻辑放在其中
2. 通过实现Runnable接口,实例化Thread类
十九、下面关于创建型模式说法错误的是( )
错误:创建型模式关注的是功能的实现
正确:创建型模式关注的是对象的创建方法
二十、
激活的对象