搜狗秋招Java客户端试题.docx
- 文档编号:15506027
- 上传时间:2023-07-05
- 格式:DOCX
- 页数:14
- 大小:307.75KB
搜狗秋招Java客户端试题.docx
《搜狗秋招Java客户端试题.docx》由会员分享,可在线阅读,更多相关《搜狗秋招Java客户端试题.docx(14页珍藏版)》请在冰点文库上搜索。
搜狗秋招Java客户端试题
一、选择题(20)
1、以下没有用栈来实现的应用场景是:
A
A进程调度
B函数调用
C表达式求值
D树的节点的深度优先遍历
2、不定项选择,如下算法的时间复杂度D
AO(n^3)
BO(n)
CO(n!
)
DO(n^2)
3、如果需要对10w个英文单词进行前缀匹配检索,下面哪种数据结构最合适:
(B)
AB+树
BTrie树
CAVL树
D哈希表
4、给定8个同样形状的硬币和一个天平,其中有一个硬币比其他硬币都重,找到该硬币需要的最少次数:
A
A2
B1
C4
D3
5、函数F(n)=F(n-1)+n+1(n>1)的递归终止条件是B
A F(0)=1
B F
(1)=1
C F(0)=0
D F
(1)=0
6、给定一个数组235617849,建立初始堆(最小堆)后,数组序列是多少C
A123657849
B125437689
C125437869
D125637849
7、CPU利用率与并发进程的关系是D
A进程数多,提高并发进程数,可提高CPU利用率
B并发进程的内存访问会增加了访存的局部性特征
C并发进程导致内存访问减小
D局部性特征的下降会导致缺页率上升和CPU利用率下降
8、有个500*400的稀疏矩阵,有20个非零元素,上每个整型数占2字节,则用三元组表示该矩阵时,所需的字节数是C
A134
B120
C126
D124
9、一个字符串由7个A和7个B组成,且满足所有的前缀字符串中的A的个数大于等于B的个数,问这样的字符串有多少个B
A431
B429
C430
D428
10、在关键词随机分布的情况下,二叉查找树的查找长度与哪些查找相当:
B
A插值查找
B二分查找
C菲波那契查找
D顺序查找
11、java集合中迭代器中iterator的fail-fast(快速失败)机制,抛出的是什么异常B
AClassCastException异常
BConcurrentModificationException异常
CNullPoinException异常
DSecturityException异常
12、关于java类加载,正确的是C
A在生成某个类的.class文件时,该类被加载到JVM中
BNoClassFeffoundError表示在编译时这个类是不能够被找到的
C类加载器的体系并不是“继承”体系,而是一个“委派”体系
D某个类可能由于被不同的类调用而被加载多次
13、java程序进行调优,会关注以下两个目标:
响应能力和吞吐量,关于这两项目目标描述错误的是A
A更重视吞吐量的系统,比重视响应能力的系统更加不能接受较长的停顿时间
B吞吐量关注在一个待定时间段内应用系统的最大工作量
C提高响应能力期望程序或系统对请求的响应时间尽可能短
D对响应能力要求很高的系统,较大的停顿时间是不可接受的
14、下列关于OracleHostpotjava虚拟机的说法正确的是D
Ajava虚拟机只有在堆空间不足的情况下,才会触发垃圾回收,
B在同一个java虚拟机之中,一个class文件只能被加载一次
C如果一个类显示的override了object类的finalize方法,那么这个finallize方法最多只能被java虚拟机调用一次
D对于分代的垃圾回收算法,在进行新生代(younggeneration)垃圾回收的时候,只需要扫描新生代的内存区域,在进行老年代垃圾回收的时候,只需要扫描老年代的内存区域
15、可通过编译的语句有哪些BD
Ashortx[1][1]=newshort[][]
Blong[]x[]=newlong[1][1]
Cbytex[][]=newbyte[][]
Dintx[][]=newint[1][1]
16、不定项选择
输出结果为:
A
AInitiallzing
Building
Wangzaiplaysball
BInitializing
Wangzaiplaysball
CBuilding
Wangzaiplaysball
DBuilding
Initializing
Wangzaiplaysball
17、java数据结构中列表(List)和集(Set)下面说法错误的是ABC
AList和Set都可以包含重复元素的有序结合
BList中最多只能有一个空元素
CList和Set都是有序集合
DSet中最多只能有一个空元素
18、关于java锁说法正确的是BC
ASynchronized和Lock都是可重入锁
BSynchronized通过对象监视器由JVM实现
C使用Lock的获取锁方法后,最好使用finally代码块释放锁
DSynchronized只能作用于方法,不可以在代码块上使用
19、JVM内存配置参数如下
-Xmx2048m-Xms2048m-Xmn1024m-XX:
MaxPermSize=256m-XXSurvivorRatio=2
,其最小内存值和Survivor区总大小分别是B
A2028m,256m
B2048m,512m
C1024m,256m
D1024m,512m
20、以下哪种方式会导致对应线程让出CPU:
(CD)
A提高其他线程的调度优先级
B增加子线程并调度执行子线程
C抛出RuntimeException
D调用sleep函数
二、问答题
(1)
1、请阐述java8在java语法上的主要改进
三、选择填空(11)
1、下面哪些是Android7.0新特性:
AD
A通知增强功能
B支持快速充电的切换
C原生的应用权限管理
D多窗口支持
2、一个应用程序中Context对象的个数等于:
B
AActivity的个数
BActivity+Service的个数
C1个
DService的个数
3、题1中,进入后,点击back键退出,打印log的顺序为A
AprintonPause
printonStop
printonDestroy
BprintonPause
printonDestroy
CprintonPause
printonStop
DprintonStop
printonDestroy
4、AsyncTask的以下函数哪些是在UI线程调用BC
AdoinBackground()
BonPreExecute()
ConPostExecute()
DpublishProgress()
5、采用Fragment设计的App比单纯用Activity设计的App更加流畅,下列说法正确的是AD
AActivity消耗的内存远大于Fragment
BActivity的生命周期管理都需要跨进程通信,相对耗时
CFragment的生命周期相比Activity更加完备
DFragment从栈中恢复是View级操作,而Activity从栈中恢复是Window级操作
6、关于线程间通信描述正确的有ABD
AHandler:
你可以构造Handler对象来与Looper沟通,以便push新消息到MessageQueue取出)所送来的消息
BLooper:
一个线程可以产生一个Looper对象,由它来管理比线程里的MessageQueue
CLooper:
一个线程可以产生多个Looper对象,由它来管理比线程里的MessageQueue
D线程:
UIthread通常就是mainthread,而Android启动程序时会替它建立一个MessageQueue
7、关于Android中的几种动画描述不正确有:
BD
A PropertyAnimaition:
属性动画只对Android3.0(API11)以上版本的Android系统才有效,这种动画可以设置给任何Object,包括那些还没有渲染到屏幕上的对象
BTewwenAnimation(补间动画):
属性动画不再仅仅是一种视觉效果了,而是一种不断的对值进行操作的机制,并将值赋到指定对象的指定属性上,可以是任意对象的任意属性
CFrameAnimation(逐帧动画):
将多张图片组合起来进行播放,类似于早期电影的工作原理,很多App的loading是采用这种方式
DPropertyAnimation(属性动画):
是对某个View进行一系列的动画的操作,包括浅入淡出,缩放,评议,旋转四种模式。
8、下面关于Activity,View,Window三者之间的关系,说法正确的是有ABCD
A“ViewRoot”是一个view或者说ViewGroup,最初始的根视图。
BView的事件监听,是由WIindowManagerService来接受消息,并且回调Activity函数
C“ViewRoot”通过addView方法来一个个的添加View
DActivity构造的时候会初始化一个Window,准确的说是PhoneWindow
9、对于Android的Handler机制的理解正确的是AD
AHandler通过handleMessage方法来处理消息
B一个子线程可以绑定多个Looper对象
C在调用Looper。
Prepare()前可以在子线程中创建Handler
DLooper负责将Message压入MQ
10、下面代码第一次点击应用打开activity,答应的log顺序为(A)
AprintonCreate
printonStart
printonResume
BprintonCreate
printonResume
printonStart
CprintonCreate
printonResume
DprintonCreate
printonStart
11、如果后台的Activity由于某种原因被系统回收了,想在被系统回收之前保存当前状态,需要重写__onSaveInstanceState()___方法,在此方法中保存需要保存的数据,该方法将会在activity被回收之前调用,通过重写_onRestoreInstanceState()___方法可以从中提取保存好的数据
四、在线编程
(1)
编程题|50.0分1/1
圆周上两点间的距离
时间限制:
C/C++语言1000MS;其他语言3000MS
内存限制:
C/C++语言30720KB;其他语言555008KB
题目描述:
定义圆周上两点的距离s为这两点之间的劣弧对应的圆心角度数(0<=s<=180),现输入圆周上的n个点(n>=2),以角度a表示其位置(0<=a<360),输入按a从小到大排序。
求最远的一对点之间的距离。
输入
第一行为点个数n,后跟n行,每行一个双精度浮点数,表示点的角度(小数点后保留8位),例如输入样例中为4个点的输入:
输出
输出最远的一对点之间的距离(双精度浮点数,小数点后保留8位)和'\n'换行符。
例如输入样例中,10.00000000与183.00000000两个点之间的距离为173.00000000,大于10.00000000与198.0000000之间的距离172.00000000,所以应输出:
173.00000000
样例输入
4
10.00000000
180.00000000
183.00000000
198.00000000
样例输出
173.00000000
Hint
注意事项:
1.程序性能要足够快,否则可能无法通过一些大型测试数据;
2.如果使用java语言,可以考虑使用BufferedReader从标准输入读取输入数据,Scanner读取一些比较大的输入数据会发生超时。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 搜狗秋招 Java 客户端 试题