本文将从以下几点浅谈原型模式:
概述
结构图
分类
浅复制:结构图
代码
复制图示
深复制:结构图
代码
复制图示
总结
概述:
用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。
允许一个对象再创建另外一个可定制的对象,根本无需知道任何如何创建的细节。
复制过程,并不是做一个抽象类,去实例化它。而是只需通过实现一个含有Clone()方法的接口就可以去克隆,这就是.NET在System命名空间中提供的ICloneable接口 。...
分类:
其他好文 时间:
2014-05-05 21:27:41
阅读次数:
359
题目:大意是说给定两个数,让你用这两个数,随意地进行+或者-两种操作,求出最小操作数使得结果为1,当不可能达到1的时候,输出-1.
方法:明显的数论题目,相当于求出ax+by=1的解。
当两个数不互素时,得不到1的结果;
当两个数互素时,使用拓展欧几里德来求得x和y,输出abs(x)+abs(y)-1即可。
注意:这道题目的数据涉及0、1,这些数...
分类:
其他好文 时间:
2014-05-05 13:27:30
阅读次数:
339
这篇对应的是习题16,读写文件
# -*- coding: utf-8 -*-
#对文件更多操作复制A文件的内容到B文件
#from sys import argv
from os.path import exists
prompt = "> "
from_file = raw_input("please input the filename where you want to copy...
分类:
编程语言 时间:
2014-05-05 12:54:02
阅读次数:
402
题目:给定一个n*m大的纸张,上面表明了每块上的字母,在其背后给定了对应位置的字母的value,在最后给出需要剪出来的剪纸的字母序列。
方法:暴力搜索。
代码:
#include
#include
#include
#include
using namespace std;
char map[502][502];
int Map[502][502];
int vis[502][502...
分类:
其他好文 时间:
2014-05-05 12:53:36
阅读次数:
338
form表单有一个serialize()方法,可以序列化表单的值,但是jquery提供的这个方法会把数据序列化为类似下面的形式:
a=1&b=2&c=3&d=4
jquery并没有提供将表单数据序列化为json的方法,所以需要我们自己封装一下,下面给出代码和测试样例,先写一个js文件:
$.ajaxSetup({
contentType: "application/x-www-for...
分类:
Web程序 时间:
2014-05-04 00:14:14
阅读次数:
320
有时候我们需要使用ajax提交去提交form的值,这样就需要使用serialize()去获取form的值,但这样获取的值如果有中文,会乱码,原因和解决方法如下:
原因:.serialize()自动调用了encodeURIComponent方法将数据编码了
解决方法:调用decodeURIComponent(XXX,true);将数据解码
如:
var data=$('#addf...
分类:
Web程序 时间:
2014-05-04 00:12:51
阅读次数:
274
Zxing中文乱码解决方法总结
尝试过很多方法 最后发现此方法解决的乱码最多.......
在百度搜索二维码图片
经过前2页的测试 除开一张图之外 其余都能扫描出结果
如果大家有更好的解决方法 请联系我 谢谢
解决方法如下:
首先使用反射的方法判断扫描结果 是不是ISO8859-1的编码格式
如果是 将扫描结果转换成GB2312
如果不是 就直接显示.....
分类:
其他好文 时间:
2014-05-03 23:58:41
阅读次数:
486
题目:给出一个n*m大的花园,求出从左上角到右下角的路径数目(路径单调)。
方法:路径数=C(m+n-2,m-1);别忘了最后对p取余。由于数据最大能达到10^5,使用杨辉三角记录的话会爆内存,所以只能换方法。
由于C(x,y)=x!/(y!*(x-y)!),这里我们可以将x!分解素因子,并保存记录下来,同样的方法记录后面两个,由于x!必然能够整除(y!*(x-y)!),...
分类:
其他好文 时间:
2014-05-03 17:41:40
阅读次数:
224
现在很多软件的免费版都是有广告的,这让原本清清爽爽的界面变得乱七八糟,QQ 虽然没有收费版,但是也要开了会员才能去广告。那不开会员如何屏蔽 QQ 广告呢?早在 QQ2009 Beta 版的时候,可以通过删除一些文件让非会员也能实现去广告的目的,可惜从 QQ2009 正式版起增加了文件完整性检查,删除文件会导致 QQ 无法启动,并且要求重新安装。
这里要介绍的方法,其实只要你对 Windows 操...
分类:
其他好文 时间:
2014-05-03 17:34:44
阅读次数:
258
题目:经典dp题目,求出最大相邻子序列的和。
方法:给出两种方法,一种dp,一种直接暴力(数据量小的时候可以考虑)。
代码1:
#include
#include
using namespace std;
int main()
{
int n;
int t=1;
cin>>n;
int s[100010];
while(t<=n)
{
...
分类:
其他好文 时间:
2014-05-03 17:02:34
阅读次数:
324