用户名: 密码: 企业 个人
当前位置:89学习网范文文章招聘应聘笔试微软笔试题目» 正文

微软笔试题目

[10-16 20:00:41]   来源:http://www.89xue.com  笔试   阅读:90
摘要:由于不能利用浮点运算,所以距离的比较只能在距离平方的基础上进行。也就是比较 x**2 + y**2 和 r**2之间的差值。微软笔试题:将一个句子按单词反序将一个句子按单词反序。比如 “hi baidu com mianshiti”,反序后变为 “mianshiti com baidu hi”。可以分两步走:第一步按找字母反序,“hi baidu com mianshiti” 变为 “itihsnaim moc udiab ih”。第二部将每个单词中的字母反序,“itihsnaim moc udiab ih。
微软笔试题目,标签:笔试范文,http://www.89xue.com

  由于不能利用浮点运算,所以距离的比较只能在距离平方的基础上进行。也就是比较 x**2 + y**2 和 r**2之间的差值。

  微软笔试题:将一个句子按单词反序

  将一个句子按单词反序。比如 “hi baidu com mianshiti”,反序后变为 “mianshiti com baidu hi”。

  可以分两步走:

  第一步按找字母反序,“hi baidu com mianshiti” 变为 “itihsnaim moc udiab ih”。

  第二部将每个单词中的字母反序,“itihsnaim moc udiab ih” 变成 “mianshiti com baidu hi”。

  这个方法可以在原字符串上进行,只需要几个整数变量来保持指针即可,空间复杂度低。

  微软笔试题:计算n bit的整数中有多少bit 为1

  设此整数为x。

  方法1:

  让此整数除以2,如果余数为1,说明最后一位是1,统计值加1。

  将除得的结果进行上面运算,直到结果为0。

  方法2:

  考虑除法复杂度有些高,可以使用移位操作代替除法。

  将 x 和 1 进行按位与操作(x&1),如果结果为1,说明最后一位是1,统计值加1。

  将x 向右一位(x >> 1),重复上面过程,直到移位后结果为0。

  方法3:

  如果需要统计很多数字,并且内存足够大,可以考虑将每个数对应的bit为1的数量记录下来,这样每次计算只是一次查找操作。

  微软笔试题:快速求取一个整数的7倍

  乘法相对比较慢,所以快速的方法就是将这个乘法转换成加减法和移位操作。

  可以将此整数先左移三位(×8)然后再减去原值:X << 3 - X。

  微软笔试题:判断一个数是不是2的n次幂

  设要判断的数是无符号整数X。

  首先判断X是否为0,如果为0则不是2的n次幂,返回。

  X和X-1进行按位与操作,如果结果是0,则说明这个数是2的n次幂;如果结果非0,则说明这个数不是2 的n次幂。

  证明:

  如果是2的n次幂,则此数用二进制表示时只有一位是1,其它都是0。减1后,此位变成0,后面的位变成1,所以按位与后结果是0。

  如果不是2的n次幂,则此数用二进制表示时有多位是1。减1后,只有最后一个1变成0,前面的 1还是1,所以按位与后结果不是0。

  微软笔试题:三只蚂蚁不相撞的概率是多少

  在三角形的三个顶点上各有一只蚂蚁,它们向另一个顶点运动,目标随机(可能为另外两个顶点的任意一个)。问三只蚂蚁不相撞的概率是多少?

  如果蚂蚁顺时针爬行记为0,逆时针爬行记为1。那么三只蚂蚁的状态可能为000,001,...,110,111中的任意一个,且为每种状态的概率相等。在这8种状态中,只有000和111可以避免相撞,所以蚂蚁不相撞的概率是1/4。

  微软笔试题:判断数组中是否包含重复数字

  给定一个长度为N的数组,其中每个元素的取值范围都是1到N。判断数组中是否有重复的数字。(原数组不必保留)

  给定一个长度为N的数组,其中每个元素的取值范围都是1到N。判断数组中是否有重复的数字。(原数组不必保留)

  微软笔试题:如何将蛋糕切成相等的两份

  一块长方形的蛋糕,其中有一个小长方形的空洞(角度任意)。使用一把直刀,如何一刀将蛋糕切成相等的两份?

  通过长方形中心的的任意直线都能将长方形等分,所以连接两个长方形的中心点的直线可以等分这个蛋糕。

  一个没有排序的链表,比如list={a,l,x,b,e,f,f,e,a,g,h,b,m},请去掉重复项,并保留原顺序,以上链表去掉重复项后为newlist={a,l,x,b,e,f,g,h,m},请写出一个高效算法(时间比空间更重要)。

  建立一个hash_map,key为链表中已经遍历的节点内容,开始时为空。

  从头开始遍历链表中的节点:

  - 如果节点内容已经在hash_map中存在,则删除此节点,继续向后遍历;

上一页  [1] [2] [3]  下一页


Tag:笔试笔试范文招聘应聘 - 笔试