当前位置 博文首页 > 风云:最新百度 阿里 华为 腾讯 谷歌面试笔试题及解析

    风云:最新百度 阿里 华为 腾讯 谷歌面试笔试题及解析

    作者:[db:作者] 时间:2021-06-10 21:13

      1. 8月15日,百度2道面试题:
        1、来自《编程之美》的概率题:一个桶里面有白球、黑球各100个,现在按下述规则取球:的
        ? ? i 、每次从通里面拿出来两个球;
        ? ? ii、如果取出的是两个同色的求,就再放入一个黑球;
        ? ? ii、如果取出的是两个异色的求,就再放入一个白球。
        问:最后桶里面只剩下一个黑球的概率是多少?
        2、算法题:给你一个自然数N,求[6,N]之内的所有素数中,两两之和为偶数的那些偶数。
      2. 9月5日,华为2014校园招聘的机试题目
        通过键盘输入一串小写字母(a~z)组成的字符串。请编写一个字符串压缩程序,将字符串中连续出席的重复字母进行压缩,并输出压缩后的字符串。
        压缩规则:
        ? ? 1、仅压缩连续重复出现的字符。比如字符串"abcbc"由于无连续重复字符,压缩后的字符串还是"abcbc"。
        ? ? 2、压缩字段的格式为"字符重复的次数+字符"。例如:字符串"xxxyyyyyyz"压缩后就成为"3x6yz"。
        要求实现函数:?
        ? ? ?void stringZip(const char *pInputStr, long lInputLen, char *pOutputStr);
        ? ? 输入pInputStr: ?输入字符串lInputLen: ?输入字符串长度
        ? ? 输出 pOutputStr: 输出字符串,空间已经开辟好,与输入字符串等长;
        注意:只需要完成该函数功能算法,中间不需要有任何IO的输入输出
        示例?
        ? ? 输入:“cccddecc” ? 输出:“3c2de2c”
        ? ? 输入:“adef” ? ? 输出:“adef”
        ? ? 输入:“pppppppp” 输出:“8p”
      3. 9月6日,网新恒天2014校园招聘笔试编程题
        已知memcpy的函数为: void* memcpy(void *dest , const void* src , size_t count)其中dest是目的指针,src是源指针。不调用c++/c的memcpy库函数,请编写memcpy。
        点评:老题,参考答案如下
        1. //copyright@July?2013/9/24??
        2. void*?memcpy(void?*dst,?const?void?*src,?size_t?count)??????
        3. {??????
        4. ????//安全检查??
        5. ????assert(?(dst?!=?NULL)?&&?(src?!=?NULL)?);??????
        6. ??
        7. ????unsigned?char?*pdst?=?(unsigned?char?*)dst;??????
        8. ????const?unsigned?char?*psrc?=?(const?unsigned?char?*)src;??????
        9. ??
        10. ????//防止内存重复??
        11. ????assert(!(psrc<=pdst?&&?pdst<psrc+count));??????
        12. ????assert(!(pdst<=psrc?&&?psrc<pdst+count));??????
        13. ??
        14. ????while(count--)??????
        15. ????{??????
        16. ????????*pdst?=?*psrc;??????
        17. ????????pdst++;??????
        18. ????????psrc++;??????
        19. ????}??????
        20. ????return?dst;??????
        21. }????