C++面试题
cyndi2011
无无无
展开
-
C++常见面试题30道
1.new、delete、malloc、free关系delete会调用对象的析构函数,和new对应free只会释放内存,new调用构造函数。malloc与free是C++/C语言的标准库函数,new/delete是C++的运算符。它们都可用于申请动态内存和释放内转载 2017-04-21 15:45:15 · 305 阅读 · 0 评论 -
求最大公约数和最小公倍数
求最小公倍数算法:最小公倍数=两整数的乘积÷最大公约数求最大公约数算法:(1)辗转相除法有两整数a和b:① a%b得余数c② 若c=0,则b即为两数的最大公约数③ 若c≠0,则a=b,b=c,再回去执行①例如求27和15的最大公约数过程为:27÷15 余1215÷12余312÷3余0因此,3即为最大公约数[cpp] view plai原创 2017-05-24 11:25:59 · 422 阅读 · 0 评论 -
互联网公司常见面试算法题
1、假设淘宝一天有5亿条成交数据,求出销量最高的100个商品并给出算法的时间复杂度。先用哈希,统计每个商品的成交次数,然后再用在N个数中找出前K大个数的方法找出成交次数最多的前100个商品。优化方法:可以把5亿个数据分组存放,比如放在5000个文件中。这样就可以分别在每个文件的10^6个数据中,用哈希+堆统计每个区域内前100个频率最高的商品,最后求出所有记录中出现频率最高的前10原创 2017-04-21 21:22:54 · 53440 阅读 · 3 评论 -
整理C++面试经典编程题
1.数组乘机输入:一个长度为n的整数数组input;输出:一个长度为n的整数数组result,满足result[i]=input数组中除了input[i]之外所有数的乘积(假设不会溢出)。比如输入:input={2,3,4,5},输出result={60,40,30,24}。程序要求:具有线性复杂度,且不能使用除法运算符。思路:left[i]存储input[i]之前所有元素的乘积,原创 2017-04-26 20:43:44 · 2267 阅读 · 0 评论 -
C++判断IP地址字符串的合法性
目前的解决方法可以归为以下三类:1、自己动手写:以'.'将IP字符串分割成子串,再依次判断每个子串的每个字符是否都是数字,最后转换成值,判断是否在0~255的范围。/* 功能: 判断IP地址是否有效 接口函数: booli sIPAddressValid ( const char * pszIPAddr ) 输入: pszIPAddr 字符串 输原创 2017-08-02 18:28:54 · 20436 阅读 · 0 评论