课程咨询 :15265420612 QQ:2720475033

  • 百度腾讯Android笔试题

    发布:达内潍坊中心      来源:企业面试题      时间:2015-12-30

  • 腾讯Android笔试题

    1.int a = 1;

    int result = a+++3<<2;

    2.int a = 2;

    int result = (a++ > 2)?(++a):(a+=3);

    3.int a = 1234567;

    int b = 0x06;

    int result = a&b;

    4.Integer a = 34556;

    Integer b = 34556;

    boolean result = a==b;

    5.String func(string s ){

    return s.length() > 0 ? func(s.subString(1))+ s.charAt(0):"";

    }

    String result = func("Tencent");

    6.byte result = (byte) oxffeffefe;

    7.int result = [(oxfe2baf&oxf)|oxff] >> 2/(4<<1);

    8.判断两个String的交集

    比如 A = "Marginle",B = Valaienie", 交集为aie,写个算法。

    9.什么是状态机?项目中什么时候用到状态机,举例说明。

    10.写出两种单例模式

    Android基础

    1.Activity和BroadCast Receiver的生命周期

    2.写出几种service和Activity的交互方式

    3.UI线程和非UI线程的交互方式,写出几种各自的耗时。

    4.requestLayout, invalidate和postInvalidate的异同

    5.写出三种常用layout布局并进行解释

    6.http怎么加入超时和代理

    7.view的绘制过程,讲讲draw/onDraw和drawChild这个可以口述。

    8.以下是Android sdk的英文文档请细读。

    9.100盏灯,全部关闭,第一人全部打开(亮),第二个人隔一个按开关,第三个人隔2个按开关,以此类推,第100人路过时有几盏灯亮着?(写出结果就行)

    Java基础

    1.说出sleet,wait,notify的区别

    -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    百度Android笔试题

    2013-5-2号补充:

    1.View和ViewGroup的关系

    2.如何定位和解决Andorid的内存溢出问题

    3.一个有N个元素的一维数组(A[0],A[1], ..., A[n-1]),设计一个算法求解该数组最大子数组。(要求时间复杂度是O(n))

    4.用Java代码实现判断一个字符串中是否包含另一个字符串,不要用jdk中String的indexOf方法。

    5.用Java实现一个Singleton.

    6.简述Observer设计模式,并画出Observer模式的典型结构类图

    7.& 和&&的区别

    8.什么是dpi,ps,sp?适配是如何做的,为什么?

    9.用最有效率的方法算出2乘以8等于几?

    10.静态成员类、非静态成员类有什么区别?什么是匿名内部类?

    11.Handler机制的原理,内部是如何实现的,消息队列的实现机制?

    12.什么是ANR,如何定位和避免?

    13.APK之间互相传递数据

    14.简述Android的启动过程

    15.如何加载ndk库?如何在jni中注册native函数,有几种注册方法?

    16.如何收集软件崩溃信息?

    17.简述软件编译流程和发布流程

    18.是否编译过android源码和linux内核源码

    19.写一个归并排序数组

    20.自定义控件相关

    21.缓存实现

    22.线程同步(生产者 消费者)

    23.符号匹配(栈)

    24.还问了下拉刷新和分页加载的实现机制

    -------------------------------------------------------

    盘古搜索面试总结

    算法题

    2.求一个数组的最大连续子序列和,比如:-10,3,5,2,-3,6,7

    最笨的方法就是穷举法,用三层for循环

    3.求一个数组中出现次数最多且值最大的数

    android的基础题

    1.service的生命周期

    2.Intent用途,了解多少?IntentService知道么?

    3.自定义控件

    4.xmpp协议的理解

    5.广播创建方式有几种?有什么区别?

    6.多线程有几种实现方式?

    继承Thread, 实现Runnable接口, AsynTask

    ------------------------------------------------------------

    一、listview如何优化(这个很重要,多次被问到)

    1.分页加载

    2.convertView缓存

    3.viewHolder

    4.scrollListener,记住滑动的状态

    二、常用排序算法,各种算法的复杂度,用Java实现一种排序算法。

    四、单链表的反转、合并、排序

    五、二分查找法

    六、Intent Flag常用的记住几个

    七、AIDL怎么用?全称是什么?

    八、taskAffinity 亲和性

    这个一般人应该都不熟悉,了解一下,面试中可能被问到,几率不大。

    --------------------------------------------------------------

    百度各种面试总结

    1.Listview item缓存如何实现

    convertView

    2.很多view如何缓存

    3.图片上传

    4.图片过大如何处理?压缩后图片有多大?

    分辨率压缩、质量压缩

    5.OOM怎么办?

    6.图片的缓存机制,如何做到高效和稳定?

    7.自定义view怎么做能提高效率? 自定义view如何做图片缓存?自定义view如何判断单击和双击?自定义view 的 onDraw方法主要做什么?

    避免重复调用measure 和 layout

    8.是否看过view的源码

    9.动画的机制及其底层实现?

    10.二叉树、链表

    11.平时看什么书?去哪些论坛看?

    12.问项目底层实现

    13.Linux文件系统实现,如何实现文件的隐藏?

    ---------------------------------------------------------------------------------------------------------

    面试算法题总结

    1.有一个整数数组,有负数和整数,用一个方法把正负数分开,要求空间复杂度是O(1),时间复杂度是:O(N)(百度移动平台部)

    2.有一个数列,奇数个,其中有3个是单个的, 其它都是成对的,怎么找出其中任意一个单个的数(小米一面)

    3.在一个数组中,找出出现次数最多且数值最大的一个数并输出

    4.用最快的方式将两个数组合并到一个数组中?时间复杂度

    ============================================================================================

    2013-4-10补充:

    问题:怎样的类可以作为HashMap的键?

    答:这个问题是搜狗2012年的笔试题,我开始还真是没想太明白。刚才看到HashMap的时候才发现原来是这么回事。

    当需要往ArrayList,HashMap中放东西时,像int,double这种内建类型是放不进去的,因为容器都是装object的,这就需要这些内建类型的外覆类了。比如:int对应的Integer,double对应的Double。

    同样是搜狗的笔试题:适合频繁插入和查找的数据结构

    答:频繁插入,链表效率高,频繁查找数组效率高,那么综合一下,我个人觉得是哈希表,或者说HashMap等使用hash算法的数据结构。

    1、对于简历上所写的每个问题,面试官感兴趣的会对我提问,并分析里边遇到的问题以及得到的经验。面试过程描述以前做过的项目。项目中你认为的难点是什么。

    2、对于网络交互这块儿需要注意什么问题

    3、android是一个什么样的系统。Jni调用机制是什么。用uml画一个在你的项目中使用的设计模式。

    面试中常问的非技术类问题:

    1.简单介绍一下你自己。

    2.对自己做个评价,优点、缺点。

    3.自己做过的项目,详细介绍一下。

    4.实习经历,在实习过程中遇到哪些问题,如何解决的?

    5.你对公司有什么问题要问吗(对公司有什么要了解的)?

    技术类的问题主要就看对技术的掌握程度和自己的综合能力了。

    百度移动终端研发工程师笔试题,题量不大,2个小时,有点难度。

    1.写一个字符串逆序的程序,时间复杂度和空间复杂度最低,效率越高越好。

    2.实质:二叉树的层序遍历,每层的结点用单链表输出。

    3.1-N(N最大32000,且未知),内存只有4K,找出其中的重复数

    4.编程题,比较复杂,是个系统设计题,与《编程之美》中3.2,电话号码对应英语单词类似。

    百度软件开发工程师一面问题:

    1.有101个数,为[1,100]之间的数,其中一个数是重复的,如何寻找这个重复的数,其时间复杂度和空间复杂度是多少?

    2.Java中抽象类与接口的区别。

    3.进程与线程之间的联系与区别。(多家公司都在问,好好研究一下)

    4.谈谈对设计模式的认识与理解,简单介绍一下你所知道的设计模式。(多家公司都问,Android方向面试必考的)

    5.线程、多线程相关(必问)

    6.Linux常用的命令,shell编程,grep命令的使用。

    7.海量数据查找或者排序,有资源限制要求。(常考的)

    建议:简历中对自己的专业技能要实事求是的写,突出自己的重点,不宜托大,面试官面试时提问的依据就是简历上的内容。百度的工作环境很好,做技术的员工给人的感觉就是虽然人家的技术水平很高,但是都比较谦逊。百度确实是一个不错的互联网公司。

上一篇:阿里巴巴Android笔试题

下一篇:70道经典Android笔试题

最新开班日期  |  更多

java培训班

java培训班

开班日期:11月30日

ui设计培训班

ui设计培训班

开班日期:11月30日

web培训班

web培训班

开班日期:11月30日

php培训班

php培训班

开班日期:11月30日

 扫一扫,关注一下! 潍坊:奎文区东风东街299号建行大厦 济宁:市中区太白路10号苏宁生活广场
烟台:海港路25号阳光100城市广场 临沂:兰山区红旗路1号苏宁易购
淄博:张店区金晶大道68号华润大厦 济南:历下区趵突泉北路三联商社
济南:历下区山大路47号数码港大厦 青岛:市南区金坛路17号
课程培训电话:15265420612 QQ:2720475033 全国服务监督电话:400-111-8989    服务邮箱 tousu@tedu.cn

2001-2017 达内时代科技集团有限公司 版权所有 京ICP证8000853号-56

达内教育

有位老师想和您聊一聊