
面试题
文章平均质量分 55
xiepengcheng716
这个作者很懒,什么都没留下…
展开
-
在数组中找出3个数使得它们和为0
leetcode上的原题,美图的笔试题目。本质上这个问题是2数之和的问题扩展:在给定的数组中找出两个数a,b,使得a+b=sum。三个数之和为0,即a+b+c=0,可以转化为a+b=-c,这需要保证-c在数组中。下面代码采用了两个循环,第一个循环代表初始值,即先是第一个值a[0]不变,计算a[0]+a[1]+a[n-1],若大于0则k减1,计算a[0]+a[1]+a[n-2],若小于0原创 2017-03-31 16:16:50 · 3109 阅读 · 0 评论 -
网易2017实习笔试题-CPU双核调度问题(动态规划解决)
题目的大概意思:一种双核CPU的两个核能够同时的处理任务,现在有n个已知数据量的任务需要交给CPU处理,假设已知CPU的每个核1秒可以处理1kb,每个核同时只能处理一项任务。n个任务可以按照任意顺序放入CPU进行处理,现在需要设计一个方案让CPU处理完这批任务所需的时间最少,求这个最小的时间。 输入包括两行:第一行为整数n(1 ≤ n ≤ 50)第二行为n个整数length原创 2017-03-25 22:19:17 · 7131 阅读 · 4 评论 -
const和define的区别
(1) 编译器处理方式不同 define宏是在预处理阶段展开。 const常量是编译运行阶段使用。(2) 类型和安全检查不同 define宏没有类型,不做任何类型检查,仅仅是展开。 const常量有具体的类型,在编译阶段会执行类型检查。(3) 存储方式不同 define宏仅仅是展开,有多少地方使用,就展开多少次,不会分配内存。转载 2017-04-11 20:37:14 · 208 阅读 · 0 评论 -
含有指针成员的类的构造函数、拷贝构造函数、赋值运算符
class String{ public: String(const char *str=NULL); String(const String& other); String& operator=(const String& other); ~String(); private: char *m_data;};String::String(const char* str){原创 2017-03-26 20:04:41 · 2262 阅读 · 0 评论 -
实现strcpy函数
char* strcpy(char* dest, const char* str){assert(dest != NULL && str!= NULL);char *address=dest;while((*dest++ = *str++) != '\0');return address;}原创 2017-03-26 20:36:38 · 243 阅读 · 0 评论 -
中缀表达式转化为后缀表达式
一、后缀表达式求值后缀表达式也叫逆波兰表达式,其求值过程可以用到栈来辅助存储。假定待求值的后缀表达式为:6 5 2 3 + 8 * + 3 + *,则其求值过程如下:1)遍历表达式,遇到的数字首先放入栈中,此时栈如下所示:2)接着读到“+”,则弹出3和2,执行3+2,计算结果等于5,并将5压入到栈中。3)读到8,将其直接放入栈中。原创 2017-07-14 20:45:01 · 371 阅读 · 0 评论