Android面试题目
daojin505
这个作者很懒,什么都没留下…
展开
-
Android 面试题目之一:大整形相加
package interview;import java.nio.CharBuffer;public class BigNumberAdd { public static void main(String[] args) { String value1 = "155"; String value2 = "555"; String result = a...2017-08-05 15:24:20 · 102 阅读 · 0 评论 -
Binary Tree non-recursive traverse method.
[code="java"]package interview;import java.util.ArrayList;import java.util.List;import java.util.Stack;/** * None recursive pre-order, post-order and in-order. * In order to back trace...2017-08-27 14:13:25 · 153 阅读 · 0 评论 -
深入思考编译原理之 理解执行过程和编译过程
在深入编译器原理细节之前,很多学习者并没有真正从宏观上理解一个编译器都做了些什么,这其实是非常遗憾的。从计算机执行过程角度思考,函数调用的尤为重要,面向过程的语言更是将函数调用作为最基本的要素。面向对象的语言也是基于最基本的函数调用实现的。因此本文就从函数调用开始,由浅入深地思考如何构建我们的编译器。1. 一个函数调用和其子调用之间的结构图。一个SuperFunction对象 ...2017-08-20 16:07:31 · 355 阅读 · 0 评论 -
騰訊大廈有39層的問題解決方案。
[size=large]問題:[/size]腾讯大厦有39层,你手里有两颗一抹一眼的玻璃珠。当你拿着玻璃珠在某一层往下扔的时候,一定会有两个结果,玻璃珠碎了或者没碎。大厦有个临界楼层。低于它的楼层,往下扔玻璃珠,玻璃珠不会碎, * 等于或高于它的楼层,扔下玻璃珠,玻璃珠一定会碎。玻璃珠碎了就不能再扔。现在让你设计一种方式,使得在该方式下,最坏的情况扔的次数比其他任何方式最坏的次数都少...2017-08-20 00:10:02 · 200 阅读 · 0 评论 -
Integer装箱和拆箱 以及扔玻璃球的题目
Integer装箱和拆箱,很奇怪的,因此Integer比较不要使用==![code="java"]package interview;public class IntegerTest { public static void main(String[] args) { // -128--127之间 Integer i1 = 100; Integer...2017-08-19 22:34:03 · 106 阅读 · 0 评论 -
面试题目之 ----使用非迭代方法快速排序
1.教科書上使用迭代的方法進行快速排序,原则上所有的迭代都可以用自定义栈来转换为非迭代算法。假如最少两个构成一段, 当前的分段个数一定不会超过length/2. 用两个数组表示各个分段:int[] low = new int[length/2];int[] high = new int[length/2];每次循环只拆分栈顶的那个分段,用index 变量记录栈顶,并加入...2017-08-19 11:55:43 · 439 阅读 · 0 评论 -
Android 面试题目之 线程池
[color=red][size=xx-large]记不住密码怎么办?[/size][/color][url]http://a.app.qq.com/o/simple.jsp?pkgname=com.wa505.kf.epassword[/url][size=x-large][b]1. 线程池结构模型。[/b][/size]线程池一般情况下需要有三个独立的小模块组成:a. 任务...2017-08-18 00:32:24 · 364 阅读 · 0 评论 -
Android 面试题目之 关于AbstractQueuedSynchronizer的注解翻译
关于AbstractQueuedSynchronizer的注解翻译: 提供一个框架来实现阻塞锁和相关同步器(信号量,事件,等),这个框架依赖于先入先出等待队列(FIFO)。 这个类设计作为很多同步器的基础,这些同步器都依赖于一个原子的(atomic)整形(int)来代表状态。子类必须定义受保护的方法来改变这个状态。子类也必须定义当这个对象被获取或者释放时,这个状态的意义。有了这些...2017-08-16 11:15:15 · 337 阅读 · 0 评论 -
Android面试题目之(11) Class结构,动态代理和方法监控
1.动态代理,这里有篇博文。http://blog.csdn.net/self_study/article/details/55050627http://www.cnblogs.com/flyoung2008/archive/2013/08/11/3251148.html2.Class结构,这里有篇博文http://blog.csdn.net/zhangjg_blog/arti...2017-08-15 21:21:24 · 138 阅读 · 0 评论 -
Android面试题目(10) 内存泄露
android 中内存开发,需要很多内存泄漏的问题。最根本的原因是对象不该被GCRoots引用,可是对象被GCRoots引用到了,下面是常见的内存泄露问题: 1.InputManager 引起内存泄露: mNextServedView, mServedView android.view.inputmethod.InputMethodManager...2017-08-15 15:11:44 · 133 阅读 · 0 评论 -
Android面试题目之(八) AIDL的设计原理
1. 首先从抽象层次上来讲。AIDL实际上是在玩远程代理。远程代理对象,完成进程间通信: 2. 下面这个图展示了BinderProxy,Binder 和IBinder的关系。值得注意的是,其中Binder的transaction方法是没有用处的, 本地的调用没有必要执行transaction。另外,由于本地桩要接收消息,因此Binder有个方法会被调用,也就是execTransa...原创 2017-08-13 23:47:56 · 1605 阅读 · 1 评论 -
Android面试题目之(七) AsyncTask的原理是什么?
[size=xx-large]1. AsyncTask是什么?[/size]AsyncTask使得可以恰当和简单地使用 UI线程。这个class允许你在后台做一些事情,然后把进度和结果告诉UI线程,而不需要操作handler和线程。[size=xx-large]2. AsyncTask设计的思想是什么?[/size]AsyncTask的设计是为了成为一个关于Thread和H...2017-08-13 15:09:18 · 203 阅读 · 0 评论 -
Android面试题目之六---Handler,Looper和MessageQueue深入研究
[size=x-large]1.Handler, MessageQueue, Looper 之间的关系图。[/size] a. Looper相当于一个引擎,从队列中获取消息,然后发送给Handler. b. Handler不但能接收消息,还能发送消息。也就是说它是一个消息收发器,同时还可 以查询和移除消息。 c. MessageQueue是一个消息队列,提供...2017-08-12 23:40:03 · 163 阅读 · 0 评论 -
Android面试题目之四: 归并排序
归并的核心思想是归并。归并的速度直接影响到算法的快慢。 1. 简单插入归并 public static class MergeSorter1 implements Sorter { public void sort(int[] values) { int step = 1; while (step <= values.length) { int...2017-08-07 14:51:33 · 140 阅读 · 0 评论 -
Android面试题目之三: 字符串转整形
1. 首先写了一个字符串转整形的算法: public static class String2Int1 implements String2Int { @Override public int string2int(String str) { int value = 0; int pow10 = 1; for (int j = str.length() ...2017-08-06 16:57:09 · 306 阅读 · 0 评论 -
Android面试题目之二:整形转换为字符串
整形转换为字符串,写了五种算法,并进行了性能分析:1. 算法: 直接先求得长度,然后从左向右求得各位的大小 private static class Int2String1 implements Int2String { public String int2String(int intValue) { if (intValue == 0) { return "0...2017-08-06 13:37:56 · 373 阅读 · 0 评论 -
非递归遍历二叉树的方法
[code="java"]package interview;import java.util.ArrayList;import java.util.List;import java.util.Stack;/** * None recursive pre-order, post-order and in-order. In order to back trace...2017-08-27 18:32:00 · 114 阅读 · 0 评论