资源描述:
《2014木瓜移动校园招聘笔试题》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、1.有A到J十个人手拉手构成一个环,其中A和B不相邻,问一共有多少种排列方式? 解:基本的环排列算法。公式:N!/N(N即为参与排列的人) 就本题而言,首先十个人环排列10!/10,然后将AB当成一个人进行环排列9!*2!/9 排除AB相邻的即为答案:10!/10-9!*2!/92.代码的优化,给出下一段代码,请做出最好的优化1. intf(n)2. {3.if(n<=4)4.returnn*n;5.else6.{7.returnf(n-4)*f(n-1)-f(n-2)*f(n-2);8.}9. }复制代码3.
2、有两枚硬币AB,其中A为正常硬币,B的两面都是人头,随机从AB中选出一枚,并抛向空中。求:1)若硬币落下后是人头,则是A的概率;2)连续抛n次,落下后都是人头,求是A的概率。解答:条件概率1)设抛一次,硬币落下是人头为M事件;随机选出的硬币是A的为N事件 p(N
3、M)=p(MN)/p(M)=/=2)设抛n次,硬币落都是人头为Mn事件 p(Mn)=()^n+(备注:“+”前为A硬币的概率,“+”后为B硬币的概率) p(N
4、Mn)=p(N·Mn)/p(Mn)=1/(1+2^n)4.什么是同步IO和异步IO,各有什么优缺点
5、?什么情况下用同步IO较好,什么时候用异步IO较好?5.给定一个字符串,求串中字典序最大的子序列分析:字典序最大的子序列是这样构造的:设字符串为a0a1.....an-1。首先在a0a1.....an-1找到值最大的字符ai,然后在剩余的ai+1....an-1中值最大的字符aj,然后在剩余的aj+1....an-1中值最大的字符ak.....直到字符串的长度为0。则aiajak...即为答案容易想到,an-1一定在所求串中,因此一个好的方法就是从an-1开始向前搜索,当当前值大于或等于子序列中首字符的值时,就将其加入串首
6、,直到搜索完整个串为止。代码:1.boolget_largest_sub(constchar*src,char*&largest_sub)2.3.{4.5.if(src==NULL)6.7.{8.9.returnfalse;10.11.}else 12.1.{ 2.3.intsLen=strlen(src);4.5. if(largest_sub==NULL
7、
8、strlen(largest_sub)9、gest_sub=(char*)malloc(sLen+1);14.15. }else16.17. {18.19. largest_sub=(char*)realloc(largest_sub,sLen+1);20.21. }22.23. 24.25. }26.27.largest_sub[sLen-1]=src[sLen-1];28.29.intj=sLen-1;30.31.for(inti=sLen-2;i>=0;i--)32.1.{2.3.if(src[i]>=largest_sub[j])4.5.{6.
10、7.largest_sub[--j]=src[i];8.9.}10.11.}12.13.intp,q;14.15.for(p=0,q=j;p