面试题
施工中请绕行
喜欢研究底层技术,编译原理,操作系统技术,数据库引擎实现原理。2012年校园招聘进入腾讯北分云平台部,从事终端开发职位。
展开
-
一道面试题,求1~n中1出现的次数
今天下午创业教育课上无聊,想起来一道微软的面试题,即求1~n中1出现的次数例如n=11 则1一共出现4次:1 10 11这个问题我仔细思考了一阵,推出了一个很快的解法(复杂度ln(N))...写在BLOG上保存思路: 首先确定个位1的个数,再统计十位1的个数,.....统计最高位1的个数全部累加即为所求.设n=497 则过程如下:个位1数: 由于497中的"49"是由于个位进位得到的,不难想出个位一共进了49位,每次进位个位出现一个1,因此个位1的个数等于490/10+剩下'7'包含1个个数共计4原创 2011-03-23 22:09:00 · 1436 阅读 · 6 评论 -
nlogn求逆序数 POJ 2299解题报告
前几天自己想出了利用归并排序求逆序数的方法,找了一个求逆序数的题2299 交了300++MS水过... Ultra-QuickSortTime Limit: 7000MS Memory Limit: 65536KTotal Submissions: 19686 Accepted: 6959DescriptionIn this problem, you have to analyze a particular sorting algorithm. The algorithm processes a seque原创 2011-03-29 11:45:00 · 1531 阅读 · 0 评论 -
一个字符串的面试题
题目: 有一字符串由M个单词组成单词之间有空格隔开(只有空格,没有其他标点符号),有N个关键字,现在要在字符串中找出包含N个关键字(每个关键字至少出现一次,没有说要不要按什么顺序)的最短子串。函数原型:String extractSummary(String description, String[] keywords)思路:想了一阵,想出了一个方法,设主串长n 关键字长m 则复杂度大致为nlogm举个例子说下过程:例如主串: ab ba ad ba ab ef ba ab ef ad关键字集原创 2011-04-02 22:02:00 · 962 阅读 · 0 评论 -
经典面试题 -- 让CPU占用率听你指挥
在《编程之美》上有这么一道题,题目是:编程让CPU的占用率呈正弦曲线变化。 初看这题基本没什么思路,后来了解到CPU占用率的计算公式就找到突破口了。 CPU占用率计算公式:CPU占用率 = 运行时间/总时间 x 100% 有了上面的公式,只需要让一个时间片内运行的时间占该时间片的比例呈正弦变化即可。 //正弦曲线的 double time = 0.0 ; d原创 2011-12-30 13:07:31 · 1981 阅读 · 0 评论 -
最长上升子序列O(nlogn)算法
上个月参加腾讯校园招聘的笔试,填空部分有一道题问:计算最长上升子序列的最快算法的时间复杂度和空间复杂度是多少?例如序列:{1 4 2 3 7 6 5 7}的最长上升子序列是{1 2 3 6 7},长度为5。此题的答案是O(nlogn)和O(n),在这之前我只了解n^2的算法,没有看过nlogn的算法,到网上搜索发现对于该算法的介绍都比较晦涩难懂,因此我决定弄懂它后写一篇blog,详原创 2012-10-17 11:12:39 · 2986 阅读 · 4 评论