面试集锦
文章平均质量分 53
famousDT
掌握C/C
展开
-
【编程之美】1的个数+POJ-3286(0的个数)
/*==========================================================*\| 【google面试题】给定一个正整数N,写下从1开始,到N的所有整数,| 然后数一下其中出现的所有“1”的个数。| (1)写一个函数f(N);| (2)满足条件“f(N) = N”的最大的N是多少?| 【解答】| (1)只分析当前位是0,1或者[2,9]三种情原创 2012-03-09 10:58:55 · 588 阅读 · 0 评论 -
面试整理
int i = 1;int main(){ int i = i; return 0;}//能通过编译,但i是未定义的值下水道井盖为什么是圆的展示一段自己觉得写过的最好的程序数组在哪里分配空间(堆or栈)原创 2012-07-09 11:22:34 · 1537 阅读 · 0 评论 -
Xmart Imaging【笔试】
1. 求sizeof#include #include union my{ int x; int y[5]; char z;};struct you{ int a; union my b; double c;};int main(){ printf("%d %d原创 2012-07-05 13:21:45 · 776 阅读 · 0 评论 -
2011百度之星初赛A-图标排列
【题目描述】百度应用平台上有很多有趣的应用,每个应用都由一个开发者开发,每个开发者可能开发一个或多个应用。百度的工程师们想把应用尽可能好的推荐给用户。研究发现,同一个开发者开发的程序的图标有很大的相似性。如果把同一个开发者开发的应用放在一起,用户很快就会厌倦相似的图标,如果把这些图标穿插摆放效果就会好很多。现在工程师想给用户推荐来自m个开发者的n个应用,在推荐的时候这些应用的图原创 2012-05-22 16:26:36 · 182 阅读 · 0 评论 -
百度实习笔试题(6-8题)(2012.05.06)
6.有一种结构如下图所示,它由层的嵌套组成,一个父层中只能包含垂直方向上或者是水平方向上并列的层,例如,层1可以包含2、3、4三个垂直方向上的层,层2可以包含5和6两个水平方向的层,在空层中可以包含数据节点,所谓的空层是指不包含子层的层,每个空层可以包含若干个数据节点,也可以一个都不包含。在这种结构上面,我们从垂直方向上划一条线,我们约定每一个子层中我们只能经过一个数据节点,在这种情况下,每条线可原创 2012-05-09 14:04:04 · 706 阅读 · 0 评论 -
百度实习笔试题解析(第二题)(2012.05.06)
2.线程和进程有什么区别,“线程安全”怎么理解?【区别】(1)简而言之,一个程序至少有一个进程,一个进程至少有一个线程。(2)线程是处理器调度的基本单位,但进程不是。(3)线程的划分尺度小于进程,使得多线程程序的并发性高。(4)另外,进程在执行过程中拥有独立的内存单元,而多个线程共享内存,从而极大地提高了程序的运行效率。(5)进程和线程的主要差别在于它们是不同的操作系统资源原创 2012-05-09 13:04:04 · 1555 阅读 · 0 评论 -
百度实习笔试题解析(第一题)(2012.05.06)
1. 单词a中任意字母交换位置变为单词b,我们就称单词a,b为兄弟单词,如 army 与 mary为兄弟单词。现给一个单词字典,用户输入一个单词,找出字典中所有的兄弟单词,请写出你的解题思路和算法。【解题思路】:在编程珠玑上第二章结束出有此题的解析(18-19页),首先将字典里的单词做这样的处理如字典有:pans pots opt snap stop tops处理结果如下:格式A:原创 2012-05-09 12:48:01 · 651 阅读 · 0 评论 -
百度实习笔试题解析(3-5题)(2012.05.06)
3.c与c++分别是怎样动态分配和释放内存的,有什么区别?c是malloc和free,c++是new和delete,区别如下:(1)new、delete 是操作符,可以重载,只能在C++中使用。(2)malloc、free是函数,可以覆盖,C、C++中都可以使用。(3)new 可以调用对象的构造函数,对应的delete调用相应的析构函数。(4)malloc仅仅分配内存,free原创 2012-05-09 13:41:03 · 591 阅读 · 0 评论 -
【编程之美】精确表达浮点数
转自hi,baidu【问题描述】: 在计算机中,使用float或者double来存储小数是不能得到精确值的。如果你希望得到精确计算结果,最好是用分数形式来表示小数。有限小数或者无限循环小数都可以转化为分数。比如:0.9 = 9/100.333(3)= 1/3(括号中的数字表示是循环节)当然一个小数可以用好几种分数形式来表示。如:0.333(3)= 1/3 = 3转载 2012-03-22 10:49:35 · 616 阅读 · 0 评论 -
【编程之美】寻找发帖水王+SOJ-2399+SOJ-2861+SOJ-2862
【题目描述】有一组数,很多很多个数,里面有一个数出现了超过一半次,请你把它找出来.int find_over_half(int d[], int n){ int i, sum = 0, t; for (i = 0; i < n; ++i) { if (sum == 0) { t = d[i]; sum = 1; } else { if (d[i] == t)原创 2012-03-22 10:43:45 · 7231 阅读 · 1 评论 -
【编程之美】桶中取黑白球+SOJ-3261
SOJ-3261只是把黑球和白球交换,对于SOJ来说,结果只和黑球数量有关,而下面的只和白球数量有关。【题目描述】有一个桶,里面有白球、黑球各100个,人们必须按照以下的规则把球取出来:1、每次从桶里面拿出来两个球;2、如果是两个同色的球,就再放入一个黑球;3、如果是两个异色的球,就再放入一个白球;问:最后桶里面只剩下一个黑球的概率是多少?【解题思路】思路1:找原创 2012-03-21 16:11:49 · 1052 阅读 · 0 评论 -
【编程之美】不要被阶乘吓倒+SOJ-1159
转自人人网。阶乘(Factorial)是个很有意思的函数,但是不少人都比较怕它,我们来看看两个与阶乘相关的问题:1. 给定一个整数N,那么N的阶乘N!末尾有多少个0呢?例如:N=10,N!=3 628 800,N!的末尾有两个0。2. 求N!的二进制表示中最低位1的位置。分析与解法有些人碰到这样的题目会想:是不是要完整计算出N!的值?如果溢出怎么办?事实上,如果我们转载 2012-03-21 17:41:32 · 629 阅读 · 0 评论 -
【寻找临界楼层】面试难题
问题1 :题目:一种石头,在某一高度扔下就会碎,在这个高度以下不会碎,高度以上一定碎。现在有4个石头,1000层的楼房,需要测定这个石头破碎的高度。求最少多少次一定可以测出来。问题2 :题目:一个100层的大厦,你手中有两个相同的鸡蛋(玻璃球或围棋)。从这个大厦的某一层扔下鸡蛋((玻璃球或围棋))就会碎,用你手中的这两个鸡蛋(玻璃球或围棋),找出一个最优的策略,来得知那个临界层面。原创 2012-10-04 20:18:21 · 1812 阅读 · 0 评论