
爱奇艺2014笔试题答案
bluetears1988
这个作者很懒,什么都没留下…
展开
-
9.URl全排序
每台机器上有1G个URL,平均每个100个bytes,机器内存64G,有10台这样的机器,如何对所有10台上的URL进行全排序?答:此处的URL全排序,理解为将所有机器上的数据按照出现频度进行降序排列, 分三步,1)先计算每个URL的出现次数 2)按出现次数进行排序 3)将结果保存到一个文件中 每台机器上数据的大小为100G字节,大于每台机器的内存,这是多机+受限内存的情况原创 2013-10-07 14:14:39 · 1823 阅读 · 0 评论 -
4.单链表是否有环
4.如何判断单向链表是否有环?已知有环的情况下如何找到环的起始节点?要求时间o(N),空间o(1).设定两个指针p,q,p每次向前移动一步,q每次向前移动两步。如果单向链有环,则p会与q相遇;否则,q会遇到NULL。int isExistLoop(node *head){ node * slow,fast; slow = head; fast = head; while(f原创 2013-10-07 20:24:17 · 1058 阅读 · 0 评论 -
8.统计数组中数字出现次数
8.给定数组A,大小为N,数字元素为1~N的int数,但是有些数字出现多次,有些数字没出现,统计出哪些数字出现了多次,哪些数字没有出现,要求额外空间使用O(1),时间O(N)答:空间复杂度为o(1),故不能用额外的空间,即在数组本身上操作。时间为o(N),故不能用先排序后比较相邻元素的方法,时间为o(nlogn)。先用元素采交换法,使数组下标=数组中元素值 - 1,如果元素A[i]存在多个原创 2013-10-07 15:48:52 · 3311 阅读 · 0 评论 -
10.求逆序对数
10.给定一个inversion的定义如下:对于一个整型数组A,以及任意的下标i,j,其中iA[j],我们称它为一个inversion.请设计一种算法用来计算给定数组A中的inversion的个数。原创 2013-10-07 18:40:31 · 2351 阅读 · 0 评论 -
1.JVM垃圾回收机制
1.请简述JVM的垃圾代收集机制gc用于释放那些不再使用的对象所占的内存。gc通过确定对象是否被活动对象引用来确定是否收集该对象。java管理的内存是堆。基本的收集算法有复制,标记清除,标记整理。分代是jvm的gc的一大亮点。根据对象的生命周期长短,把堆分为3个代:Young,Old和Permanent,根据不同代的特点采用不同的收集算法。原创 2013-10-07 19:35:40 · 904 阅读 · 0 评论