码迷,mamicode.com
首页 > 其他好文 > 详细

今天开始就参加各种笔试了,让我记录一下有趣的笔试题目吧

时间:2017-10-10 01:39:21      阅读:206      评论:0      收藏:0      [点我收藏+]

标签:重复   ext   bre   笔试题   style   logs   sts   div   语句   

第 一 次 笔 试

1.推断题

关键语句 x = x&(x-1);

给定x,要求计算多少次之后,x = 0;

答:这个语句的作用用例子就可以看出

1&0 = 0;count = 1;

11&10 = 10,10&01 = 00;count = 2;

110&101 = 100,100&011 = 000;count = 2;

可以看出语句的作用就是数二进制位中 1 的个数,所以只需要将x的值转化为二进制就行,使用除余法就可以得到;

 

2.求24题

给出5,5,5,1 要求每个数用且仅用一次进行四则运算得出24。

答:这种题好像只能试10,0,25,1 -> 15,5,50,2;  5,-5,0,0;  20,30,125,5;  6,-4,5,0.2; -> 剩下操作数1 (以5,5开头无解);

6,4,5,5  -> 11,1,30,1.2; 9,-1,20,0.8;(见上);(见上); -> 剩下操作数5(5,1开头无解);

6,-4,5,5 -> 见上;1,-9,-20,-0.8;(见上);(见上); -> 剩下操作数5(1,5开头无解);

答案是无解?!搞不清楚闹哪样;

 

3.基础代码题

写出能找出一串字符串中第一个唯一的字符的函数 例如abacddeeff,返回 b;

答:代码如下

 1 char firstSingle(char* str){
 2     
 3     char * a = str;
 4     char * b = str;
 5     
 6     for(; *a != \0;a++){
 7         
 8         bool same = false;
 9         
10         for(b = str; b != a;b++){
11             if(*a == *b){
12                 same = true;
13                 break;
14             }
15         }
16         if(!same){
17             for(b = a+1; *b != \0;b++){
18                 if(*a == *b){
19                     same = true;
20                     break;
21                 }
22             }
23             if(!same)    break;
24         }
25     }
26     return *a;
27 }

有重复检查,但是是最容易想到的一种方法

 

今天开始就参加各种笔试了,让我记录一下有趣的笔试题目吧

标签:重复   ext   bre   笔试题   style   logs   sts   div   语句   

原文地址:http://www.cnblogs.com/noprofessional/p/7643636.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!