- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
阿里2015实习生-客户端笔试题目解析讲述
阿里2015实习生-客户端笔试题目解析字数4220?阅读5189?评论21?喜欢93职位:2015实习生-客户端开发工程师考试时间:笔试,基本40分钟 + 附加80分钟如果你有比我答案更好方法的话,欢迎留言~ 已经修改多次了。1.在网络传输数据时,经常需要将二进制数据转换为一个可打印字符串,一般用到的可打印字符集合包含64个字符,因此又称为Base64表示法,现有一个char数组长度为12,要将它表示为Base64字符串,请问Base64字符串至少需要几个char;如果char的长度为20,则需要几个char。解答:char是一个基本数据类型。它可以表示一个byte大小的数字,即8位,而Base64使用基于6位的编码。所以就是12x 8/6 = 16;而20 x 8/6 = 20 x 4/3 = 24 + 2.666 ,多余的需要用?====补齐到4位,所以是28。答案:16,28应用实例:在HTTP GET/POST中一般都需要对参数进行base64编码在OSX中的.plist文件中的data数据也是Base64编码的2.某部门年会的时候,有个环节叫做《国王和天使》,每个人将自己的名字写在纸条上并丢入盒子中,等所有人都完成该动作后,每个人再从盒子里拿出一张小纸条,上面的人物就是自己的国王,自己就是ta的天使,如果抽到自己,就再抽一遍,直到抽到别人为止,如果用有向图来表示他们之间的关系,那么以下结论错误的是_?1. 最后的结果可能是存在多个联通分支2. 联通分支个数最多不超过人数的二分之一3. 最后的结果可能是存在多个强联通分支4. 可以用深度优先算法求得联通数5. 可以用双向链表存储其结构6. 遍历的复杂度是O(N)解答:这个题目有三个BUG,当是人数三个人(或者奇数)时,其中两个人互相抽取的话,总有一个人抽不到,这个人就活该单身吗?还有个问题就是,在数学中一般翻译为“连通”而不是“联通; 最后一个问题就是,连通数这个概念我没有在离散的书上找到,谷歌上也很少搜到。所以我认为这是一个不严谨不负责任的题目。接下来是我的分析,我们先假设,当出现四个人的时候(偶数特例),两两成环的话,答案123都是对的。接着答案五也是对的,这个结构明显就是链表。第六的复杂度等于 O(线 + 边),肯定在2N左右,所以也是对的。最后我们排除出来的是4。对于4的理解,我认为它只能求出连通通路的个数,而不是连通数。所以,答案是4。是不是看晕了?看来需要自学一遍离散了 ---?点我3.假设支付宝红包口令支持1到6位的数字组合,即0,1,003和‘999999’都是合法的红包口令,那么总共可以有多少个合法的红包口令?解答:高中概率题,注意1,000001与001是不一样的就可以理解了。10 + 100 + 1000 + 10000 + 100000 + 1000000 =假设某棵二叉查找树的所有键均为1到10的整数,现在我们要查找下面_是不可能是键的检查序列。1. 10,9,8,7,6,52. 2,8,6,3,7,4,53. 1,2,9,3,8,7,4,6,54. 2,3,10,4,8,55. 4,9,8,7,56. 以上均正确解答:一个个按照BST画呗,然后找出有分叉的,第二个是错的。5.能整除1400的数目是__?解答:笔试的时候我直接跳了,毕竟2分钟算这个划不来。后来问了学长,有了一个新的方法。首先 1400 = (2x2x2) x (5x5x7)然后我们计算 2x2x2 ,有 2 4 8 三个计算 5x5x7 , 有 5 7 25 35 175 共5个这两个相乘,有 15 个最后就是 15 + 3 + 5 = 23 个。(我看到百度知道上有人在考试时间去问题目,非常鄙视这种行为)6.设二叉树节点的线序遍历,中序遍历与后序遍历,所有叶子节点的先后顺序__?解答:三者是相同的,遍历顺序不影响叶子节点PreOrder Travesal7.一个具有513个节点的二叉树,有_种可能的层高。解答:513 = 511 + 2如果是完全树的话,就是2^count - 1= 511 = count = 9 ,完全树是9层,然后加上一个小尾巴,就是10层。接着,我们考虑最差的情况,就是树退化为链表,这时 count = 513;所以[10,513],就是513-10 + 1 = 504;8.给定一个整数sum,从有N个无序元素的数组中寻找元素a,b,c,d,使得a + b + c + d = sum,最快的平均时间复杂度是_?1. O(N^2)2. O(log N)3. O(N)4. O(N^3)5. O(N^2logN)6. O(N^4)解答:这个问了学长。寻找一个元素至少需要N个时间;寻找两个元素的话,俩俩相加,消耗N-1时间,然后去遍历。总时间
文档评论(0)