我的2010年终总结

2010年12月31日 madongfly 没有评论

时间过得好快,一年就这样过去了,2010是我的本命年,也是我来到这个世界上的24年中发生的事情最多也最大的一年,在此总结一下,以纪念这不同寻常的一年。

成长

人都是在不断成长的,不过这一年中经历的事情,对我的成长所造成的影响可能更大于以往的数年。

年初的时候,领着飞一起回家了,却没有想到家里发生了那么大的事情,也幸好有飞陪在我的身边,才让我这个“伪坚强”的男人带着坚强的面具度过了那段最艰难的日子。

家里的事改变了我的很多看法,夸张点说,甚至重塑了我的价值观。当然这个改变是逐渐渗透的,由最开始一些很不成熟甚至带有一点冲动的想法开始,逐渐的沉淀,通过慢慢的思考领悟到了很多的道理。现在回头来看,这段经历虽然痛苦,却也是很难得的人生财富。

在这件事情上,我从弟弟身上学到了很多,虽然小我两岁半,但在整个事件中,弟弟的表现却比我更加成熟,弟弟的坚强与成熟给了我很大的鼓舞,但看着他以这样的年龄,承担那么多的责任,我在心疼的同时也为自己这个不太称职的哥哥感到惭愧。今天回过头来,我很想对他说,小昆,我为有你这样的弟弟感到骄傲!

应该说,2010年的上半年,对我来说是灰色的,幸亏有飞,有月雷,庆哥你们这帮朋友,真的很感谢你们!
阅读全文…

分类: 散记 标签: , ,

为求职事致谢

2010年11月30日 madongfly 7 条评论

历时近三个月,经历了9家公司的5轮笔试,16轮30次面试之后,终于在今天提交了三方协议,标志着找工作的正式结束。

在这一期间,有太多的人帮助过我,特此写下这篇日志,算是迟来的感恩节日志吧。

首先,感谢我的家人。10年,是咱们最艰难的一年,父亲母亲,您们受苦了!如今我和弟弟都找到了满意的工作,您们放心吧!感谢您们对我的培育!

感谢飞,在我找工作这段时间里,陪你的时间很少很少,谢谢你一如既往的支持我!

感谢好友月雷、谭庆,你们陪我一起研究笔试面试题,让我受益匪浅!

感谢找工作途中的好伙伴们,月雷、小亮、周郴、李想、王洋、婷婷、王强、袁辰雨、黄武、刘州杰以及所有群里的703班兄弟们……我们一起分享信息,分享经验,谢谢你们!

感谢Roba、Han Chao和我一起分享信息,谢谢!

感谢罗平师兄,在您指导下研究的Topic Modelling方面的内容让我在找工作的时候加分不少,同时谢谢您为我推荐创新工场。

感谢创新工场的Dr. Xiong, 谢谢您的器重!感谢吴卓浩总监,谢谢您和我分享您的工作经历!

感谢淘宝的铁象,谢谢您如此看重我,并等了我那么长时间,谢谢您!

感谢百度的戴文渊学长,求职百度的过程有些波折,您给了我太多的帮助,非常感谢您!

感谢盛大创新院的刘志斌先生和邱先生,盛大创新院是我面过的最有诚意的公司之一,谢谢您们如此看得起我!

感谢Google 的一面面试官和加面面试官,我暂时还不知道您们的名字,谢谢您们对我的鼓励!

感谢Google 的Hr Angela,您是我碰到的最Nice的Hr,谢谢您一直和我保持联系,度过了这段难熬的等待……

感谢百度的辜斯缪、孙立波童鞋,谢谢你们为我提供了很多信息!

感谢何子文童鞋和何志坚大哥,谢谢你们为我提供的信息!

感谢于亚光老师,是您坚定了我等待Google的决心!

感谢周世佳老师,谢谢您给予我那么多的帮助!

感谢卢山师兄、王勇睿师兄、林乐宇师兄、翟艺涛师兄,谢谢您们帮我内推!

感谢所有帮助过我的人,谢谢你们,祝你们平安,快乐!

分类: 散记 标签:

有趣的逻辑推理题–2

2010年11月23日 madongfly 没有评论

有趣的逻辑思考题–1

答案同样设置成了白色,选中后可看。

12.一个桶装满10斤油,另外有一个能装3斤油的空桶和一个能装7斤油的空桶。试用这三个桶把10斤油平分为两份。

答案:按(10斤桶油量,3斤桶油量,7斤桶油量)的格式,初始值为(10,0,0),按以下变换可得(7,3,0),(7,0,3),(4,3,3),(4,0,6),(1,3,6),(1,2,7),(8,2,0),(8,0,2),(5,3,2),(5,0,5)。

13.有大、中、小三个酒桶,分别能装19斤、13斤、7斤酒。现在大桶空着,另外两个桶都装满了酒。试问:用这三个桶倒几次可以把全部酒平分成两份?

答案:按(19斤桶油量,13斤桶油量,7斤桶油量)的格式,初始值为(0,13,7),按以下变换可得(7,13,0),(19,1,0),(12,1,7),(12,8,0),(5,8,7),(5,13,2),(18,2,0),(11,2,7),(11,9,0),(4,9,7),(4,13,3),(17,0,3),(17,3,0),(10,3,7),(10,10,0)。

14.有10瓶药丸,每瓶有药丸1000粒。其中若干瓶内为超重药丸。普通药丸5g/每粒,超重药丸6g/每粒,每瓶药丸的数量相同。求:只用一架秤,只称一次,找出哪几瓶装有超重药丸。
阅读全文…

分类: 分享 标签: ,

有趣的逻辑思考题–1

2010年11月21日 madongfly 没有评论

在找工作的过程中,做了一些逻辑题,很多题还是很有意思的,在做这种类型题目的过程中能找到一些乐趣,于是打算和我的室友庆哥一起,将网上流行的一些有趣的逻辑思考题整理一下,附上我们的答案,和大家一起分享。

答案我都设置成了白色,用鼠标选中后可以看到。

1. 经过加减乘除运算,得到24
10,10,4,4
3,3,8,8
3,3,7,7

答案:(10*10-4)/4;   8/(3-8/3); 7*(3+3/7)

2.平面9个点,过三个连成一条直线,如何放点能连出10条直线

答案:
*___*____*
__*_*_*__
*___*____* 其中星号代表点,下划线当做空格(因为普通空格会被WordPress吃掉,懒得写HTML代码了)

3.医院里的医务人员,包括我在內,总共是16名医生和护士。下面讲到的人员情况,无论是否把我计算在內,都不会有任何变化。在这些医务人员中:
(一)护士多于医生。
(二)男医生多于男护士。
(三)男护士多於女护士。
(四)至少有一位女医生。」
这位说话的人是什么性別和职务?
阅读全文…

分类: 分享 标签: ,

《编程之美》2.20程序理解和时间分析

2010年9月1日 madongfly 1 条评论

最近在看《编程之美》,为找工作面试做准备。该书中2.20程序理解和时间分析一题没有给出解答,所以简单写一下我自己的答案。

题目如下:
阅读以下C#代码,回答问题:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
using System;
using System.Collections.Generic;
using System.Text;
 
namespace FindTheNumber
{
     class Program
     {
          static void Main(string[] args)
          {
               int [] rg =
               {2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,
               18,19,20,21,22,23,24,25,26,27,28,29,30,31};
 
               for(Int64 i = 1; i < Int64.MaxValue; i++)
               {
                    int hit = 0;
                    int hit1 = -1;
                    int hit2 = -1;
                    for (int j = 0; (j < rg.Length) && (hit <= 2); j++)
                    {
                          if((i % rg[j]) != 0)
                          {
                               hit++;
                               if(hit == 1)
                               {
                                    hit1 = j;
                               }
                               else if (hit == 2)
                               {
                                    hit2 = j;
                               }
                               else
                                    break; 
 
                          }
                    }
 
                    if((hit == 2) && (hit1 + 1 == hit2))
                    {
                          Console.WriteLine("found {0}", i);
                    }
 
               }
          }
     }
}

1> 这个程序要找的是符合什么条件的数?
2> 这样的数存在么?符合这一条件的最小的数是什么?
3> 在电脑上运行这一程序,你估计要多长时间才能输出第一个结果?时间精确到分钟(电脑配置:单核CPU2.0GHz,内存和硬盘资源充足)

我的解答:

阅读全文…

《CSAPP深入理解计算机系统》读后标记

2010年8月30日 madongfly 5 条评论

陆陆续续花了一个月的时间,终于看完了CSAPP(Computer System:A programmer‘s perspective 注:第二版已出:英文版 中文版),头一次看那么厚(900页)的原版书,看完还是有一点点成就感的。

从同宿舍的鲁博士那里第一次听说这本书,了解到该书从一个程序员的视角详细剖析了整个计算机系统,涵盖了组成原理、汇编语言、体系结构、操作系统、网络等计算机基础知识,当时就决定找工作之前一定要看看这本书,现在终于搞定,也算是间接复习了一下前述几门课程。

这次阅读用的是鲁博士的书,再次印证了买来的书没有借来的书看得彻底的“真理”……

在阅读过程中,对该书的各个章节做了一些标注,以备将来重新翻阅的时候参考。这些标注主要从两个角度进行,一是对我找工作应试(包括笔试和面试)有没有用,二是对我自身的技术提高有没有用,所以分为应试和修炼两个指标,参照流行的打分标准将其分为从★到★★★★★五个等级。现记录如下:
阅读全文…

计算机中浮点数的舍入

2010年8月6日 madongfly 2 条评论

学过计算机组成原理的同学都知道在计算机中,浮点数是通过3个部分来表征的,1个bit的符号位,k个bit的指数位和n个bit的有效数位,对于C语言中的float和double,k、n值分别是8、23和11、52。

我们可以想象一下,表征浮点数的bit是有限的,因而其组合也是有限的,是无法完全表征所有实数的,事实上,连一些10进制下看上去很简单的数也都无法精确表示。比如,你可以试一下下面几行代码:

1
2
3
4
5
6
7
#include <stdio.h>
int main()
{
	double a = 0.1;
	printf("%.20lf",a);
	return 0;
}

你会看到输出的其实是0.10000000000000001000。

正是由于很多实数无法精确表示,所以在计算机处理浮点数的时候,需要进行大量的舍入操作,那么计算机默认是采用什么样的舍入策略呢?

以前我一直以为计算机采用的就是人们日常所熟悉的“四舍五入”法则,因为在printf函数中,如果指定输出精度小于实际精度的话,输出的结果就是按四舍五入产生的。其实这是printf函数故意设计成这样以符合人们的日常习惯的。

实际计算机中,当需要进行舍入操作时,运用是一种叫“round-to-even”的策略,即“向偶数舍入”,举个简单的例子就可以明白了,比如1.235和1.245,舍入后都是1.24, 也就是说要使得舍入后的最后一位有效数字是偶数。

为什么要采用这样的策略,而不直接使用我们已经习惯的“四舍五入”呢。原因在于,在进行舍入的时候,最后一位数字从1到9, 舍去的有1,2,3,4;正好可以和进位的9,8,7,6相对应,而5却被单独出来了,如果我们采用四舍五入每次都将5进位的话,在进行一些大量数据的统计时,就会累积比较大的偏差,而如果采用”round-to-even”的策略,在巨大多数情况下,5舍去还是进位的几率差不多,统计时产生的偏差也就相应要少一些了。

快速看懂简单perl代码

2010年7月28日 madongfly 没有评论

最近在实现PLSV,写了一个matlab的版本,效果却远没有原作者论文上说的好。

给作者发信索要代码,答曰:本人已在公司工作,出于保密,不能给你代码,不过在这个网页(需翻墙)上有别人写的代码,你可以看一看。

看了那个blog上的代码,是一个日本人写的perl代码,一看代码风格很严谨,遂认为是精品,于是慢慢品读,但因为我是头一次读perl的代码,所以边看边查,做了一点记录。

代码太长,附在文章最后吧,先是我做的一点记录:


#!/usr/bin/perl
这一行是Linux类系统下脚本的第一行,指定脚本执行环境,python也有。

use
导入模块,类似java的import

定义变量,直接使用一个$符号,比如$a,就表示定义了一个名为a的标量。这个不管是int,float,string,char……一律使用这个表示。
定义数组,直接使用符号@,比如@array,表示定义一个名为array的数组。基本上和上面的差不多,但是perl中好像是没有直接的二维数组的定义。
定义Hash,使用符号%,比如%hash,表示定义一个名为hash的哈希结构。哈希结构基本上在前期用的不多,在后面的时候,可以和数组组合成比较强大的结构体。
阅读全文…

《独唱团》末尾漫画《The Darkness outside night》的理解

2010年7月13日 madongfly 3 条评论

昨天拿到的《独唱团》,看了几篇文章,很有感触,以后有时间再慢慢写评论。

其实我觉得《独唱团》里最有深意的就是几篇漫画了,毕竟为了杂志的出版,文字还是不能太背离主旋律的,而几篇漫画笔法虽简单,却都蕴含了一些深意。尤其最后一篇漫画《The Darkness outside night》,我看第一遍的时候就产生了强烈的共鸣,反复看了好几遍之后,一种莫名的悲哀便难以抑制的漫上心头。

好了,在在这里说一下我的理解吧:

我们就像是生活在一个玻璃瓶里的苍蝇,当我们还小的时候,我们在这个狭小的空间里缓缓地畅游,透过透明的玻璃,我们可以看到绚烂的阳光和五彩的霞云,我们以为整个世界都是我们的。终于有一天,我们发现了禁锢住我们的玻璃瓶,惊诧莫名的同时,我们感到异常的愤怒,在这个光明的世界里怎么能有这样一堵无形的墙存在呢,于是我们开始想尽一切办法冲破这堵禁锢我们自由的墙,结果,我们被撞得头破血流。在四处碰壁之后,我们终于妥协了,默默的接受了这个现实,这个时候,一个出口出现了,通过这个出口,已经妥协的我们终于走出了玻璃瓶,来到了一个肮脏世界的垃圾场,变成了一只真正的苍蝇……

漫画的最后一页,在一个肮脏城市的垃圾场背景下,写着“我的奋斗”,也许,这正是很多人奋斗史的写照……

分类: 散记 标签: ,

用Java自己实现链表

2010年4月22日 madongfly 1 条评论

先再次感叹一下自己的Java没学好……

以前本科上Java课的时候,记得最清楚地一件事就是Java里没有指针,当时曾经疑惑过,那怎么用Java写链表呢。但是也没有深想,后来要用到也是一直用像List,vector这样的现成结构。

直到最近用Java用得比较多,才逐渐搞清楚了Java中对象引用的概念,于是想到其实可以通过对象引用实现链表。写了个小程序测试一下,果然OK。
阅读全文…

分类: 程序设计 标签: ,