自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 滴滴出行 2017 软件开发 面试

滴滴出行2017软件开发面试滴滴出行2017软件开发面试 流程 各种吐槽 网申 笔试 面试 总结流程 网申 笔试 面试 各种吐槽猿猿作为一个拥有工作经验的应届生,面试过近百号人了,各种场景下都不会太紧张(阿里面除外)。所以如果读者觉得博主太牛啦,一点也没有代表性,那就对了~~ 吐槽完自己之后,...

2016-09-28 22:52:20

阅读数 2434

评论数 0

转载 Ubuntu 16.04 vim 报错: required vim compiled with +python

由于ubuntu 16.04 中的vim仅支持python3, 因此若要支持python2, 需要安装其它包(vim-nox-py2)。stackoverflow中没有见到有效信息,相关信息在这里

2016-04-24 21:33:25

阅读数 4486

评论数 0

原创 阿里算法实习生面试回忆

阿里算法实习生面试回忆前言从本科毕业到现在,经历过的面试至少也超过半百了。自己也做过面试官,算是两方面都有体会了。但是从未面试过大公司的背景,让我感觉面试之前还是有点心虚。电话面试阿里的HR效率还是很高的,前一天投出的简历(网申),第二天傍晚就有回应了。既然那么迅速,自己也高效点呗,当场决定开始电...

2016-03-21 20:45:02

阅读数 2902

评论数 0

翻译 EM 17:考虑对move代价低的参数采用值传递

EM 17:考虑对move 代价低的参数采用值传递某些函数在通常情况下会对参数进行复制操作。set 函数就是很好的例子。set 函数通常对保存在对象内的变量 进行赋值。这类函数要想得到最高的效率,如果传入参数为左值类型,则调用复制;如果传入参数为右值类型,则调用移动 :class Widget{...

2016-03-20 15:25:28

阅读数 222

评论数 0

原创 g++ 5编译链接lib时遇到的问题

科研需要,搞一个MASCOT的api用。从官网上下载后,按照教程输入命令:g++ -m64 -D__LINUX64__ -I../include resfile_peptidesum.cpp -L../lib -lmsparser ahh!报了一大堆链接错误: resfile_peptid...

2016-01-06 11:08:52

阅读数 313

评论数 0

原创 有关刷题与做工程的异同

声明:这篇只写给自己看,我相信很多人和我有不同的看法。 最近刷了一下ACM题,简单的难的都有。对于题目本身而言,没有什么好讲的,基本偏重于数据结构和算法方面。不同基础的人收获也不一样,猿猿只是拿来保持手感而已。我想说的是这些题目的评判标准与软件工程的异同点。 首先说说相同部分:...

2015-06-16 10:25:00

阅读数 298

评论数 0

原创 C++11 FAQ 中随机数生成器

头文件是, 这个别忘记了。另外一般还会用到bind函数,用以简写,所以包括头文件也是必须的。 既然看不懂FAQ,那就直接抄大神的代码吧! #include #include #include #include using namespace std; default_random_e...

2015-03-11 20:15:24

阅读数 265

评论数 0

原创 C++11中的final关键词

阅读stroustrup网站中对于C++11的FAQ,其中有final关键词。猿猿立刻就想到了一道非主流的面试题: 如何创建一个不能被继承的类? 先看“先进生产力的代表”C++11(猿猿有点落伍了,现在还在学习11标准,sigh~~),so easy! class A{ public:...

2015-03-08 11:01:25

阅读数 515

评论数 0

原创 修剪vector中过剩容量的方法

一句话 vector(contestants).swap(contestants); 其中contestants为capacity很大,但是size很小的vector。这里先用copy ctor创建了一个临时对象,然后和contestants交换。之后编译器会自动释放原来那个大capacity...

2015-02-11 16:52:41

阅读数 228

评论数 0

原创 模板类中定义模板函数

用模板类和模板函数是C++程序猿必须掌握的技能。然而要充分运用编译器的推导能力则不简单。 需求:建立一个表格类, 每一列的类型可以任意指定(编译期指定),每一行的元素可以任意指定(运行期确定)。列数可变(编译期指定),行数可变(运行期确定)。 这里特意强调了编译期和运行期,就是...

2015-02-10 20:44:11

阅读数 414

评论数 0

原创 stl中remove和remove_if的陷阱

写程序时遇到这样一个需求: 将map容器中的特定值删除。很容易就想到了remove_if。 remove_if(myMap.begin(), myMap.end(), myCmpfn()); 后来发现compile error。那就换最原始的写法,不用remove_if。 for...

2015-02-03 21:18:57

阅读数 208

评论数 0

原创 c++11中的lambda表达式

介绍lambda表达式的文章有很多,这里不是讲怎么用,而是讲为什么要用。 想象一个场景:最常见的操作就是要遍历一个容器(数组、vector、list……),然后对每个元素进行特定操作。for(auto iter = array.begin(); iter != array.end(); ++i...

2015-01-30 22:27:15

阅读数 191

评论数 0

原创 *(char**) 与 (char*) 的区别

斯坦福大学公开课中讲到用C语言实现泛型的linear search。其中的比较函数为void (*cmpfn)(void* vp1, void* vp2)。那么,如果是比较两个字符串数组,该如何写这个比较函数呢? 一般思路都没啥神奇的地方,将void* 类型转换成想要的类型,然后已知类型的比较...

2015-01-25 14:01:42

阅读数 287

评论数 0

提示
确定要删除当前文章?
取消 删除