归并排序的基本思想:首先,将R[0..n-1]看成是n个长度为1的有序表,将相邻的有序表进行归并,得到n/2个长度为2的有序表;然后,再将这些有序表成对归并,得到n/4个长度为4的有序表,如此循环下去,最后得到一个长度为n的有序表。
注意的是:Merge()实现了一次归并,接下来需要利用Mer...
分类:
其他好文 时间:
2014-05-08 14:28:05
阅读次数:
484
实现要点:1.组合模式采用树形结构来实现普遍存在的对象容器,从而将“一对多”的关系转化“一对一”的关系,使得客户代码可以一致地处理对象和对象容器,无需关心处理的是单个的对象,还是组合的对象容器。2.将“客户代码与复杂的对象容器结构”解耦是组合模式的核心思想,解耦之后,客户代码将与纯粹的抽象接口——而...
分类:
其他好文 时间:
2014-05-08 13:03:35
阅读次数:
355
首先定义一个足够长的数组。拿10000的阶乘为例,最后的结果长度是35660位,所以我们定义一个40000个成员的数组就可以了。int
result[40000];其核心思想就是把计算结果每一位上的数字保存到一个数组成员中,例如:把124保存至数组中,保存结果应该是result[0]
4result...
分类:
其他好文 时间:
2014-05-08 12:39:13
阅读次数:
255
编程思想: 更改图片的路径信息 代码如下: 点击灯泡来点亮或熄灭这盏灯——Money
makes the world go around.
分类:
Web程序 时间:
2014-05-08 12:25:12
阅读次数:
1114
Struts 2的起源和背景Struts 2以WebWork优秀的设计思想为核心,吸收了Struts
1的部分优点,建立了一个兼容WebWork和Struts 1的MVC框架,Struts 2的目标是希望可以让原来使用Struts
1、WebWork的开发人员,都可以平稳过渡到使用Struts 2框...
分类:
其他好文 时间:
2014-05-08 11:22:06
阅读次数:
392
最近开工了机房收费系统重构版,确实是有点纠结。
因为这一次是完全应用面向对象的思想设计程序。虽然之前学习了很多次面向对象编程,但是到实际应用的时候,还是会感到无从下手。纠结也没用,因为生活还在继续。。
机房收费系统,先从UML建模开始说起,刚刚画完包图和用例图,现在在头疼类图,说到类图,那真是无所适从,怎么抽象出类?添加什么属性?应该有什么方法?
类直接又改怎么联系?等等肯定不能像第一次画图...
分类:
其他好文 时间:
2014-05-08 00:06:49
阅读次数:
369
问题:如何将一个数组循环左移或者右移k位?
在下面的解决方案中,我们以循环左移为例。 我们最容易想到的是,将前k个元素复制到一个临时的数组中,然后将剩下的n-k个元素向左移动k个位置,然后将之前的k个元素复制到剩下的位置。这种方法使用了k个额外的存储空间。我们想到到另一种方法是,只借助一个临时空间,每次只向左移动1位,循环k次。这种方法产生了多于的运行时间。前面一篇文章中用程序...
分类:
移动开发 时间:
2014-05-07 23:22:35
阅读次数:
410
由于python具有无限精度的int类型,所以用python实现大整数乘法是没意义的,但是思想是一样的。利用的规律是:第一个数的第i位和第二个数大第j位相乘,一定累加到结果的第i+j位上,这里是从0位置开始算的。代码如下:
import sys
def list2str(li):
while li[0]==0:
del li[0]
res=''
for i in li:
res+...
分类:
编程语言 时间:
2014-05-07 23:13:21
阅读次数:
453
1.文件的扩展名的区别 1>c语言源文件的扩展名是.c,而oc的扩展名是.m
2>c语言经过编译之后得到的目标模块扩展名是.obj,而oc编译之后是.o
3>c语言目标程序与其他目标程序和库函数经过连接得到可执行文件的扩展名是.exe,而oc是.out2.两者的编程思想是不同的 c语言是面向过程的编...
分类:
其他好文 时间:
2014-05-07 21:02:47
阅读次数:
302