巨人网络2019秋招安卓开发工程师笔试题

巨人网络今年秋招试题,是技术岗的,安卓开发工程师方向,我有答案,一并发出来,仅供参考吧

一:

1.(ios android开发者都需要作答)以下关于栈内存和堆内存的描述正确的是B

栈内存和堆内存对线程都是私有的

栈内存对线程私有,堆内存公有

栈内存和堆内存对线程都是公有的

栈内存对线程公有,堆内存私有

 

2.(ios android开发者都需要作答)移动设备中最常见的cpu架构是: D

1386

x86

IA-32

Arm

 

3.( android)关于 Intentservice的描述不正确的是:B

它拥有较高的优先级,不易被系统杀

它可以用于后台执行耗时的异步任务,当任务完成后需手动停止

它内部通过 Handler Thread Handler实现异步操作

它继承自 Service并且本身就是一个抽象类

 

4.( android) android用到的“.9″后缀的图可以放在以下哪个res文件夹下面C

anim

mipmap

drawable

Raw

 

5.( android)activity启动模式有4,如下哪种它的退出顺序不再是根据调用顺序,而是在不同的任务栈中,从上往下退出A

singleInstance

singleTask

singleTop

standard

 

6.(ios)以下哪个继承关系是正确的()

UIButton-->UIControl-->UIView-->NSObject-->UIResponder

UIButton-->UIControl-->UIView-->UIResponder-->NSObject

UIControl-->UIButton-->UIView-->UIResponder-->NSObject

UIControl-->UIButton-->UIView-->NSObject-->UIResponder

 

7.( android)以下哪个进程一般用作缓存,加速下次启动B

后台进程

空进程

服务进程

可见进程

 

8.(ios) Serial Dispatch Queue Concurrent Dispatch Queue分别是什么队列()

都是同步

都是异步

分别是同步和异步

分别是异步和同步

 

9.(ios)UIKit, frame bounds的区别是()

frame bounds的别名

frame bounds的继承类

frame的参考系是父视图, bounds的参考系是自身

frame的参考系是自身, bounds的参考系是父视图

 

10.(ios)下面关于ocGCD中的用法,错误的是 ()

dispatch async(dispatch_get_main_queue(),^{

 

NSLog(@” xxx”);

});

dispatch_sync(dispatch_get_main_queue(0,0), ^{

NSLog(@”xxx”):

});

dispatch_async(dispatch_get_global_queue(0, 0),^{

NSLog(@"xxx");

});

dispatch_async(dispatch_get_global_queue(0, 0), ^{

NSLog(@”xxx”);

});

dispatch_sync(dispatch get main queueD, A

NSLog((@”xxx");

});

 

11.下面的数据结构中属于线性内存结构的有AD

链表

二又树

队列

 

12.( android)请简述 ViewHolder的作用,以及如何使用它

输入答案

 

13.(ios)请简述ios开发过程中需要用到的后缀为cer,, mobileprovision文件分别的作用,以及如何为您同学安装一个您开发的还非上架 appstore的应用的步骤

输入答案

 

 

14.(ios)请描述一下在App中购买件虚拟商品所触发的内购流程

输入答案

 

15.( android)请简述如何让两个ap相互间共享登录的账号信息,实现登录一个app后另一个app可以免登录

输入答案

 

16.(ios android开发者都需要作答)请编写一段代码实现-滴雨滴从屏幕上方加速下落的动画

答题前请选择使用的编程语言,否则将会被判定为错误答案。自动补全关键字的快捷键是Ctrl+(mac系统是command+1),撤销快捷键是Ctrl+Z

 

17.(ios android开发者都需要作答)一个界面上有一个按钮,按钮上写着打开”,当点击这个按钮后更改上面的文字使其变为“关闭”,再次点击后又变回打开”,请用代码实现这个功能的核心逻辑。

答题前请选择使用的编程语言,否则将会被判定为错误答案。自动补全关键字的快捷键是ctrl+l(mac系统是command+1),撤销快捷键是Ctrl+Z

 

18.(ios android开发者都需要作答)实现如下个函数,输入个 double数组,输出最小值和最大值

∥参数a为输入数组(a非空,至少有一个元素),

//参数n为数组大小

∥参数rMin输出最小值,

∥参数rMax输出最大值

void MinMax(double*a, unsigned int n, double & rMin, double & rMax)

{

       //To Do

}

 

要求:利用已有的一个 void QuickMin MaxIn5( double*a, double&rMin, double&rMax)函数来实现。QuickMin MaxIn5()是一个硬件底层实现的高性能函数,读取一个5个元素的数组,输出最小值和最大值。可将QuickMin MaxIn5()当作系统库函数使用,不用再去实现该函数。

答颎前请选择使用的编程语言,否则将会被判定为错误答案。自动补全关键字的快捷键是ctrl+l(mac系统是command+),撤销快捷键是Ctrl+Z

 

19.(ios android开发者都需要作答)在网络游戏中,客户端与服务器间的通讯通常采用消息机制;消息一般由消息头和消息数据两部分组成,其中消息头可能又是有多个字段拼接而成。现假设有如下消息结构

当网络层接收到一段消忘的字节流数据后,需要对消息体进行解析,现给出如下有效信息:

1、收到消息数据流,从消息头开始依次为: char buffer[]={0x4.0x0,0x1,0x7,0x0,0x1,0x2,0x3,0x4.0x5.0x6}

2、消息数据流采用小端序数据

3、给出解密函数

char* decrypt(char buff, intlen)

{

for (int n=0; n< len; n++)

{

buff[n]=(char)(buff[n]+1);

}

return buff;

}

请用补全解析消息函数 parse0代码,并写出打印结果。(:请用C/C++/C#语言编写)

//buff参数传入接收到的数据流

// msglen参数返回消息数据长度

// bcomp参数返回消息数据是否加密

//msgid参数返回消息id

//msgdata参数返回消息数据

void parse( char buff[, short* msglen, char bcomp, short* msgid, char** msgdata);

 

答题前请选择使用的编程语言,否则将会被判定为错误答案。自动补全关键字的快捷键是Ctrl+l(mac系统是command+l),撤销快捷键是Ctrl+Z

 


#秋招##巨人网络##笔试题目##安卓工程师#
全部评论
第18题有什么解题思路吗?
点赞 回复 分享
发布于 2019-10-25 11:08

相关推荐

10-12 19:08
666 C++
花开蝶自来_:技能:听动物叫,让雪豹闭嘴
点赞 评论 收藏
分享
评论
点赞
10
分享
牛客网
牛客企业服务