- 博客(12)
- 资源 (39)
- 收藏
- 关注
原创 设计模式之二:策略模式(Strategy)
策略模式(strategy)定义了一个算法家族,这个算法家族封装了一系列的算法,但是这些算法之间是相互可以替换的。策略模式让算法的变化和它们调用者的变化分离开来了。 UML图如下: 主要包括:Strategy:声明了一个对所有算法而言通用的接口类,下面的Contex类使用这个接口来调用一个一个具体的Stragety的算法。ConcreteStrategy:使用Strategy这个接口具体
2015-05-31 16:49:35 1060 1
原创 设计模式之一:简单工厂模式
这几天准备把设计模式好好看一下,顺带着做下笔记,设计模式以前零零散散看过一些,做项目时也用过或见到过一些设计模式,但是可能只是停留在见到那种设计模式时有点印象,有的时候也将名称弄混,希望这次系统学习的机会能让我对设计模式有个更加深刻的印象吧。 这次学习设计模式主要的参考资料有: 《大话设计模式》 http://www.dofactory.com/net/design-patterns 上面两
2015-05-31 14:56:29 1101
原创 switch匹配问题
C和C++中的switch匹配case的问题,记住下面2条原则就行了:只有当所有case都不匹配时才会进入default语句当找到一个匹配(无论是case还是default)后,会进入下面的case语句,直到找到break才会跳出switch。 我们把一个正常的switch的default语句转移到代码的最开始处然后执行代码可以发现问题:#include <stdlib.h>#inc
2015-05-31 13:22:44 3312
原创 LeetCode217:Contains Duplicate
题目: Given an array of integers, find if the array contains any duplicates. Your function should return true if any value appears at least twice in the array, and it should return false if every elemen
2015-05-30 16:27:08 647
原创 LeetCode27:Remove Element
Given an array and a value, remove all instances of that value in place and return the new length.The order of elements can be changed. It doesn’t matter what you leave beyond the new length.需要注意的是当删除一
2015-05-29 23:50:00 477
原创 类成员变量中存在引用,const,和指针类型时需要注意的事项
背景知识编译器默认生成函数的规则如下:1.定义一个类时,如果自己没有声明,那么编译器会自动帮助生成一个拷贝构造函数(copy construction),赋值操作符(copy assignment),析构函数(deconstruction)。2.如果没有声明任何构造函数(包括拷贝构造函数),编译器会帮助声明一个默认构造函数。构造函数(包括编译器生成的默认构造函数)的执行包括两个阶段
2015-05-24 15:06:13 3015
转载 C++中的public,protected,private继承
转载自:http://blog.csdn.net/fingding/article/details/6799913http://blog.sina.com.cn/s/blog_60cc33d70100xylq.html一览大观先贴张图:1. public继承 从语义角度上来说,public继承是一种接口继承(可以理解为子类对象可以调用父类的接口,也
2015-05-23 14:46:06 743
原创 const,enum,inline替换#define
基本上使用预处理指令#define的地方都可以使用const,enum或者inline来替换掉它。主要的原因有两个:#define ASPECT_RATIO 1.6531.预处理指令是在编译前就进行预处理的(gcc -E进行预处理,它的输出文件作为gcc -S进行编译的输入),所以编译器是看不到#define定义的符号ASPECT_RATIO ,故它不会出现在符号表中,这样如果编译期间出现
2015-05-21 16:59:47 907
原创 继承中虚函数的缺省参数值问题
如果类继承中重新定义了虚函数,那么虚函数中的缺省参数不要重新定义。用一句话来解释原因就是:虚函数是动态绑定的(dynamically bound),但是缺省参数却是静态绑定的(statically bound)。静态类型和动态类型首先需要了解什么是对象的静态类型和动态类型,对象的所谓静态类型(static type),就是它在程序中被声明时所采用的类型。以下面的类为例:clas
2015-05-20 16:40:05 2400
原创 二叉搜索树的后序遍历
给定一个整型数组,判断这个数组是否可能是一棵二叉搜索树后续遍历的结果?由于二叉搜索树的特性,任何一个节点它的左子树中的节点都比这个节点值小,右子树中的节点都比这个节点值大,那么经过后续遍历后的数组应该有一个特性,就是数组中前面一部分元素比最后一个元素值小,后面那部分元素值都比最后一个元素值大。并且前面这部分元素和后面这部分元素也符合同样的规律,根据这个特性,可以用递归求解。如下图:
2015-05-04 16:32:01 760
原创 字符串排列与八皇后问题
字符串排列问题:输入一个字符串,输出该字符串的所有排列。如输入abc,则输出abc,acb,bca,caab,cba.根据排列组合的知识,3个字符串的排列有3!=6个。这道题
2015-05-04 11:20:41 1092
原创 连续子数组的最大和问题及其变化
输入一个整型数组,数组中有正数也有负数。数组中的一个或连续的多个整数组成一个子数组。求所有子数组的和的最大值。如输入{1,-2,3,10,-4,7,2,-5},和最大的子数组为{3,10,-4,7,2},输出应该是18这是在《剑指offer》上看到的题目,这道题可以在O(n)的时间复杂度内求解,而且这个问题可以是很多更加复杂问题的子问题。所以记录加深下印象。分析:以上面列出的{1,
2015-05-01 16:30:31 663
计算机图形学算法
2014-09-05
TestCameraEye.rar
2014-07-04
GenerateBMP.rar
2014-07-03
PixelColor.rar
2014-07-03
TestPng.rar
2014-07-03
TestCone.rar
2014-07-03
TestCamera
2014-07-03
MFCCompositeViewer.rar
2014-01-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人