上周参加一个代码审查会,在会上发现了设计上的一个很严重的错误。于是,我提了好几个问题,想知道为什么会出现这一错误。但是,我的同事告诉我这都是印度团队做的设计。需要提供的一个背景信息是,这个项目是我所在的研发中心与印度的研发中心协同开发的。对于同事的这种回答,我能想到的是:可能同事将自己当做“二等公民”在做事。
将自己变成二等公民我发现在我的周围比较的普遍,不少同事在做设计时,明明应当...
分类:
其他好文 时间:
2014-07-05 10:58:50
阅读次数:
202
1.重构和核心思想
我们一直在强调,程序中我们要不断的进行代码的重构,但是重构作为一种高度的脑力活动确实不易。为什么重构在一般的团队中不易推进呢?究其原因我认为有两方面的原因,第一、项目执行计划中不包括,团队只想更快的看到结果,没有规定时间用来重构,程序员可能有这方面的意识但是做了又不加入绩效所以也没有主动去重构的行动了。第二、没有一个统一的标准,每一个具体的开发人员都会按照自己认为的标...
分类:
其他好文 时间:
2014-07-05 10:51:05
阅读次数:
203
HDU 4652 Dice (概率DP)
题目大意:
n边形的骰子,问你出现连续相同(不同)n次需要掷的次数的数学期望。
解题思路:
利用递归方式的DP的思想推公式
(1)若询问为0,则:
dp[i] 记录的是已经连续i个相同,到n个不同需要的次数的数学期望
dp[0]= 1+dp[1]
dp[1]= 1+( 1/m*dp[2]+(m-1)/m*dp[1])=1+(dp[2]+(1-m)*dp[1])/m;
dp[2]= 1+(dp[3]+(1-m)*dp[1])/m;
.................
分类:
其他好文 时间:
2014-07-04 09:11:34
阅读次数:
222
顺序查找和二分查找
一、顺序查找思想
1、 从表的一端开始扫描,顺序扫描线性表,依次扫描到的结点关键字与给定的值K相比较.如果当前扫描到的结点的关键字与给定的值K相等,则查找成功;若扫描结束后,仍未找到关键字与给定的值K相等,则查找失败;
2、顺序查找既适用于顺序存储结构,也适用于线性表的链式存储结构;
3、ASL= (n+1)/2为其平均查找长度...
分类:
其他好文 时间:
2014-07-04 08:49:02
阅读次数:
230
简述计数排序
看了好多别人写的计数排序,看了好久都没看懂,弄了好久最后发现这么简单居然花了几个小时,所以在这里写上,希望和我一样的初学者不会再绕弯路。
一、简述计数排序的思想:
设被排序的数组为A,排序后存储到B,C为临时数组。所谓计数,首先是通过一个数组C[i]计算大小等于i的元素个数,此过程只需要一次循环遍历就可以;在此基础上,计算小于或者等...
分类:
其他好文 时间:
2014-07-04 08:26:18
阅读次数:
248
屌丝运维常用shell列出你最常用的10条shellhistory|awk‘{a[$2]++}END{for(iina){printa[i]""i}}‘|sort-rn|headhistory|awk‘{a[$4]++}END{for(iina){printa[$i]""i}}‘|sort-rn|headgrep-v"#".bash_history|awk‘{++a[$1]}END{for(iina)printi,a[i]|"sort-k2-nr..
分类:
其他好文 时间:
2014-07-04 06:19:01
阅读次数:
253
Linux系统其一的哲学思想为一切皆文件,在Linux系统中有众多的文件系统下面我们就对Linux文件系统做一个简单的介绍。Linux的文件类型查看方式为:file/path/to/somefileLinux文件类型有以下几种方式。1):普通文件-2):目录文件d3):链接文件l4):套接字文件c5):设备文件..
分类:
系统相关 时间:
2014-07-04 00:54:14
阅读次数:
316
作为排序算法的一种,插入排序是稳定排序。它的时间复杂度:O(n*n),空间复杂度为:O(1)。最好的时间复杂度为:O(n),最坏和平均则为:O(n*n)。 算法的思想:给定一组无序的数组,我们从它的第二个数开始,并将它赋值给mark变量,让mark和它前面的一个数作大小比较,若小于前面的那个...
分类:
其他好文 时间:
2014-07-04 00:15:22
阅读次数:
296
计数排序是一种稳定的排序算法,它不是比较排序。计数排序是有条件限制的:排序的数必须是n个0到k的数,所以计数排序不适合给字母排序。计数排序时间复杂度:O(n+k),空间复杂度:O(k),当k=n时,时间复杂度可以达到O(n)。计数排序思想:给定一个符合规定的无序数组,先求出这个数组中最大的数,...
分类:
其他好文 时间:
2014-07-04 00:00:59
阅读次数:
271
快速排序是对冒泡排序算法的一种改进型算法,而且快速排序也采用了分治法的思想。快速排序是不稳定排序,平均时间复杂度为:O(n*logn),最坏时间复杂度为:O(n*n),空间时间复杂度:O(logn),但快速排序通常是用于排序的最佳实用的选择。快速排序的思想:从数组选取一个数(通常是第一个数)...
分类:
其他好文 时间:
2014-07-03 23:36:18
阅读次数:
296