剑指offer
文章平均质量分 74
fantasy_linux
这个作者很懒,什么都没留下…
展开
-
面试中的赋值运算符函数
当一个面试官要求应聘者定义一个赋值运算符函数时,他会在检查应聘者写出的代码中关注如下几点: (1)是否把返回值的类型声明为该类的引用,并在函数结束的时侯返回示例自身的引用(即*this).只有返回一个引用,才可以允许连续赋值。 (2)是否把参数的类型声明为常量引用。如果传入的参数不是引用而是实例,那么从形参到实参会调用一次构造函数。把参数声明为引用时可以避免这样无原创 2016-04-08 15:27:41 · 359 阅读 · 0 评论 -
面试题之二维数组中的查找
题目:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样一个二维数组和一个整数,判断数组中是否含有该整数。 例如: 1 2 8 9 2 4 9 12 4 7 10 13 6 8 11原创 2016-04-13 20:50:30 · 349 阅读 · 0 评论 -
面试题之替换空格
题目:实现一个函数,把字符串中的每个空格替换成“%20”.例如输入"We are happy",则输出“We%20are%20happy”。 对于这道题来说,大多数人都会从前向后遍历字符串,遇到空格时,将后面的字符串后移,这样一来,时间复杂度瞬间到了o(n^2),如果我们首先遍历字符串判断出字符串内由几个空格,然后从后向前遍历,一次放到位。这样一来,时间复杂度瞬间降为o(n).原创 2016-04-13 22:20:42 · 400 阅读 · 0 评论