<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[raochangping的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/raochangping</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; raochangping]]></copyright><item><title><![CDATA[组合问题及代码实现]]></title><link>https://blog.youkuaiyun.com/raochangping/article/details/39803943</link><guid>https://blog.youkuaiyun.com/raochangping/article/details/39803943</guid><author>raochangping</author><pubDate>Sun, 05 Oct 2014 16:43:25 +0800</pubDate><description><![CDATA[组合问题递归实现
以在n个数中选取m(0
1. 首先从n个数中选取编号最大的数，然后在剩下的n-1个数里面选取m-1个数，直到从n-(m-1)个数中选取1个数为止。
2. 从n个数中选取编号次小的一个数，继续执行1步，直到当前可选编号最大的数为m。

很明显，上述方法是一个递归的过程，也就是说用递归的方法可以很干净利索地求得所有组合。

下面是递归方法的实现：
（1）求从数组a[1]]></description><category></category></item><item><title><![CDATA[全排列算法]]></title><link>https://blog.youkuaiyun.com/raochangping/article/details/39584939</link><guid>https://blog.youkuaiyun.com/raochangping/article/details/39584939</guid><author>raochangping</author><pubDate>Fri, 26 Sep 2014 19:53:12 +0800</pubDate><description><![CDATA[递归实现全排列算法]]></description><category></category></item><item><title><![CDATA[2直线求交点]]></title><link>https://blog.youkuaiyun.com/raochangping/article/details/39472593</link><guid>https://blog.youkuaiyun.com/raochangping/article/details/39472593</guid><author>raochangping</author><pubDate>Mon, 22 Sep 2014 09:46:31 +0800</pubDate><description><![CDATA[一般方程与参数方程求直线交点


一、             一个例子：




如上图，有两条直线，设L1，L2。L1上有两点(0, 0)、(10,10)，L2上有两点(0,10)、(10,0)，它们的交点是（5,5）。求解交点有两种效率较高的常用方法，一般方程法与参数方程法，以下将分别描述其原理及实现。

二、             一般方程法：

直线的一般方程为]]></description><category></category></item><item><title><![CDATA[数据库范式]]></title><link>https://blog.youkuaiyun.com/raochangping/article/details/39204463</link><guid>https://blog.youkuaiyun.com/raochangping/article/details/39204463</guid><author>raochangping</author><pubDate>Thu, 11 Sep 2014 11:38:52 +0800</pubDate><description><![CDATA[数据库的设计范式是数据库设计所需要满足的规范，满足这些规范的数据库是简洁的、结构明晰的，同时，不会发生插入（insert）、删除（delete）和更新（update）操作异常。反之则是乱七八糟，不仅给数据库的编程人员制造麻烦，而且面目可憎，可能存储了大量不需要的冗余信息。
 
范式说明
 
1.1 第一范式（1NF）无重复的列
 
    所谓第一范式（1NF）是指数据库表的每一列都是]]></description><category></category></item><item><title><![CDATA[装饰模式与代理模式的区别]]></title><link>https://blog.youkuaiyun.com/raochangping/article/details/39004003</link><guid>https://blog.youkuaiyun.com/raochangping/article/details/39004003</guid><author>raochangping</author><pubDate>Tue, 02 Sep 2014 11:32:34 +0800</pubDate><description><![CDATA[装饰模式与代理模式的区别

学习AOP时，教材上面都说使用的是动态代理，可是在印象中代理模式一直都是控制访问什么的，怎么又动态增加行为了，动态增加行为不是装饰器模式吗？于是 找了很多资料，想弄清楚这两者之间到底有什么区别。结果发现这一篇英文文章讲的很清晰，就翻译一下，供参考。       

        首先，让我们先看一下下面的这两个UML类图，他们分别描述了装饰器模式和代理模式的基]]></description><category></category></item><item><title><![CDATA[装饰模式]]></title><link>https://blog.youkuaiyun.com/raochangping/article/details/39003483</link><guid>https://blog.youkuaiyun.com/raochangping/article/details/39003483</guid><author>raochangping</author><pubDate>Tue, 02 Sep 2014 11:06:48 +0800</pubDate><description><![CDATA[装饰模式


2012-01-29 17:02 5929人阅读 评论(0) 收藏 举报

decoratorclassstring扩展bordernull



目录(?)[+]




一、装饰模式简介（Brief Introduction）

动态地给一个对象添加一些额外的职责。

优点：把类中的装饰功能从类中搬移出去，这样可以简化原有的类。有效地把类的核心]]></description><category></category></item><item><title><![CDATA[面向对象的3个基本要素和5个基本设计原则]]></title><link>https://blog.youkuaiyun.com/raochangping/article/details/38976801</link><guid>https://blog.youkuaiyun.com/raochangping/article/details/38976801</guid><author>raochangping</author><pubDate>Mon, 01 Sep 2014 10:23:01 +0800</pubDate><description><![CDATA[一、3个基本要素]]></description><category></category></item><item><title><![CDATA[二叉树的3中遍历方法（递归和迭代）]]></title><link>https://blog.youkuaiyun.com/raochangping/article/details/38976737</link><guid>https://blog.youkuaiyun.com/raochangping/article/details/38976737</guid><author>raochangping</author><pubDate>Mon, 01 Sep 2014 10:19:25 +0800</pubDate><description><![CDATA[#include  
#include //STL  
#include  
using namespace std;  
class Tree  
{  
public:  
    Tree *Left;  
    Tree *Right;  
    char data;  
    Tree();  
  
    //成员函数  
    void Creat]]></description><category></category></item><item><title><![CDATA[hash表]]></title><link>https://blog.youkuaiyun.com/raochangping/article/details/38976709</link><guid>https://blog.youkuaiyun.com/raochangping/article/details/38976709</guid><author>raochangping</author><pubDate>Mon, 01 Sep 2014 10:16:11 +0800</pubDate><description><![CDATA[hash表，有时候也被称为散列表。个人认为，hash表是介于链表和二叉树之间的一种中间结构。链表使用十分方便，但是数据查找十分麻烦；二叉树中的数据严格有序，但是这是以多一个指针作为代价的结果。hash表既满足了数据的查找方便，同时不占用太多的内容空间，使用也十分方便。

    打个比方来说，所有的数据就好像许许多多的书本。如果这些书本是一本一本堆起来的，就好像链表或者线性表一样，整个数据会显]]></description><category></category></item><item><title><![CDATA[各大排序算法]]></title><link>https://blog.youkuaiyun.com/raochangping/article/details/38976459</link><guid>https://blog.youkuaiyun.com/raochangping/article/details/38976459</guid><author>raochangping</author><pubDate>Mon, 01 Sep 2014 10:10:11 +0800</pubDate><description><![CDATA[排序算法总结]]></description><category></category></item><item><title><![CDATA[MFC获取系统的当前时间]]></title><link>https://blog.youkuaiyun.com/raochangping/article/details/25326515</link><guid>https://blog.youkuaiyun.com/raochangping/article/details/25326515</guid><author>raochangping</author><pubDate>Thu, 08 May 2014 17:35:48 +0800</pubDate><description><![CDATA[1.使用CTime类 　　

 

CString str; //获取系统时间 　　

CTime tm; tm=CTime::GetCurrentTime(); 　　

str=tm.Format("现在时间是%Y年%m月%d日 %X");

MessageBox(str,NULL,MB_OK);

 

2: 得到系统时间日期(使用GetLocalTime) 　
]]></description><category></category></item><item><title><![CDATA[Cstring和string的区别和转换]]></title><link>https://blog.youkuaiyun.com/raochangping/article/details/24397593</link><guid>https://blog.youkuaiyun.com/raochangping/article/details/24397593</guid><author>raochangping</author><pubDate>Thu, 24 Apr 2014 11:03:11 +0800</pubDate><description><![CDATA[CString/string 区别及其转化




利用MFC进行编程时，我们从对话框中利用GetWindowText得到的字符串是CString类型，CString是属于MFC的类。而一些标准C/C++库函数是不能直接对CString类型进行操作的，所以我们经常遇到将CString类型转化char*等等其他数据类型的情况。这里总结备忘于此！
首先要明确，标准C中是不存在string类]]></description><category></category></item><item><title><![CDATA[VC++中string、Cstring、char*、wchar*、float、int、double之间的转换]]></title><link>https://blog.youkuaiyun.com/raochangping/article/details/21180713</link><guid>https://blog.youkuaiyun.com/raochangping/article/details/21180713</guid><author>raochangping</author><pubDate>Mon, 17 Mar 2014 17:31:21 +0800</pubDate><description><![CDATA[由于ANSI和unicode编码系统的区别，Cstring、string、float、int、double之间的转换不同]]></description><category></category></item><item><title><![CDATA[VS2005中UNICODE和ANSI的区别]]></title><link>https://blog.youkuaiyun.com/raochangping/article/details/21159667</link><guid>https://blog.youkuaiyun.com/raochangping/article/details/21159667</guid><author>raochangping</author><pubDate>Thu, 13 Mar 2014 10:52:48 +0800</pubDate><description><![CDATA[我们在编写Visual C++ 2005程序时候经常会碰到（如下错误），很迷惑 

 'CreateWindowExW' : cannot convert parameter 1 from 'const char [4]' to 'LPCWSTR'

UNICODE　　计算机发明后，为了在计算机中表示字符，人们制定了一种编码，叫ASCII码。ASCII码由一个字节中的7位(bit)表示，范]]></description><category></category></item><item><title><![CDATA[用户自定义消息SendMessage的使用]]></title><link>https://blog.youkuaiyun.com/raochangping/article/details/12656857</link><guid>https://blog.youkuaiyun.com/raochangping/article/details/12656857</guid><author>raochangping</author><pubDate>Sat, 12 Oct 2013 20:56:45 +0800</pubDate><description><![CDATA[这里主要讲一下mfc中SendMessage的使用方法。传递消息主要分4步：

1.      在类的定义中声明消息函数：afx_msg
 void AAA();

2.      在相应的cpp文件中的MESSAGE_MAP区域内添加ON_MESSAGE(MESSAGE_ID,AAA)，其中参数1为要传递消息的ID，参数2为刚刚声明的函数名称，不用带括号。

3.      实现消]]></description><category></category></item></channel></rss>