摘要: 原文:http://blog.sina.com.cn/s/blog_4afd4f7c010004zc.html标准的华容道游戏是在一个4*5的方阵中,布有一些各种形状的棋子,当然留有若干空格.你的任务是移动棋子,并把其中的一枚棋子移动到指定的位置,如以下布局,要求把上面的A棋子移动到最下方的中间(其中一个字母为一个棋子,*表示空格):B A A CB A A CD E E FG H I JG * * J解法就是朴素的,搜!搜索有两个难点,一个是状态转移,一个是状态判重.对于本题来说,状态转移是简单的,只用考虑与空格相邻的棋子怎么运动就行了.不过注意,不能用移动空格来状态转移,因为很多时候要多个 阅读全文
posted @ 2011-04-12 19:34 Cranny 阅读(371) 评论(0) 推荐(0) 编辑
摘要: /* productandconsumer. cpp */#include <windows.h>#include <stdio.h>#include <stdlib.h>typedef HANDLE Semaphore; //信号量的Windows 原型#define P(S) WaitForSingleObject (S, INFINITE) //定义P操作#define V(S) ReleaseSemaphore (S, 1, NULL) //定义V操作#define CONSUMER_NUM 10 /* 消费者个数*/#define PRODUCER 阅读全文
posted @ 2011-04-02 11:50 Cranny 阅读(1293) 评论(1) 推荐(0) 编辑
摘要: 下面是从网上搜集的一些看法:---------1.--------- Dependency Relationship Draw a dependency relationship between two classes, or between a class and an interface, to show that the client class depends on the supplier class/interface to provide certain services, such as: ?The client class accesses a value (constant 阅读全文
posted @ 2011-03-21 15:27 Cranny 阅读(2113) 评论(1) 推荐(1) 编辑
摘要: 1. 关联:连接模型元素及链接实例,用一条实线来表示;2. 依赖:表示一个元素以某种方式依赖于另一个元素,用一条虚线加箭头来表示;3. 聚集:表示整体与部分的关系,用一条实线加空心菱形来表示;4. 组成:表示整体与部分的有一关系,用一条实线加实心菱形来表示; (关联,依赖,聚集,组成的异同见后描述)5. 泛化(继承):表示一般与特殊的关系,用一条实线加空心箭头来表示;6. 实现:表示类与接口的关系,用一条虚线加空心箭头来表示;关联,依赖,聚集的异同:(《Java面向对象编程》一书,作者:孙卫琴 来源:www.javathinker.org)在建立对象模型时,很容易把依赖、关联和聚集关系混淆。当 阅读全文
posted @ 2011-03-20 13:40 Cranny 阅读(392) 评论(1) 推荐(0) 编辑
摘要: 原文 :http://www.cnblogs.com/yyyyy5101/archive/2011/03/11/1981078.html#继承指的是一个类(称为子类、子接口)继承另外的一个类(称为父类、父接口)的功能,并可以增加它自己的新功能的能力,继承是类与类或者接口与接口之间最常见的关系;在Java中此类关系通过关键字extends明确标识,在设计时一般没有争议性;实现指的是一个class类实现interface接口(可以是多个)的功能;实现是类与接口之间最常见的关系;在Java中此类关系通过关键字implements明确标识,在设计时一般没有争议性 继承和实现又可以统称为泛化依赖可以简单 阅读全文
posted @ 2011-03-19 16:15 Cranny 阅读(970) 评论(0) 推荐(1) 编辑
摘要: 原文:http://www.cnblogs.com/jessy/archive/2010/12/23/1915282.htmlStarUML指导手册【转自】:http://oycn0755.javaeye.com/blog/6010461. 综述: StarUML是一种生成类图和其他类型的统一建模语言(UML)图表的工具。这是一个用Java语言描述的创建类图的简明手册。 StarUML(简称SU),是一种创建UML类图,并能够自动生成Java的“stub code” 的工具。SU也可以做JAVA逆向工程,以产生相应的UML图表。在本教程中,我们将使用SU设计一个pizza饼。执行下列步骤,可以 阅读全文
posted @ 2011-03-19 16:14 Cranny 阅读(4842) 评论(0) 推荐(1) 编辑
摘要: 原文:http://www.cnblogs.com/dubingsky/archive/2009/06/26/1511355.html钩子函数hookWindows系统是建立在事件驱动的机制上的,说穿了就是整个系统都是通过消息的传递来实现的。而钩子是Windows系统中非常重要的系统接口,用它可以截获并处理送给其他应用程序的消息,来完成普通应用程序难以实现的功能。钩子可以监视系统或进程中的各种事件消息,截获发往目标窗口的消息并进行处理。这样,我们就可以在系统中安装自定义的钩子,监视系统中特定事件的发生,完成特定的功能,比如截获键盘、鼠标的输入,屏幕取词,日志监视等等。可见,利用钩子可以实现许多 阅读全文
posted @ 2011-03-15 23:21 Cranny 阅读(878) 评论(0) 推荐(0) 编辑
摘要: 原文:http://www.cnblogs.com/bitfan/archive/2011/03/13/1982744.html“智商平平”学软件金旭亮前几天收到了一个在职普通程序员的邮件,在邮件中他说两次报考我们学校计算机专业研究生,但总是惨败而回,第1年总分考了250,砸在政治和数学上,努力复习了一年,又是砸在数学上,总分才285……。我几乎能真切地体会到他那种沮丧和不甘心——为什么我经过一年的辛苦努力,却还是原地踏步并在同一个地方跌倒两次?同样的疑问我也曾经问过自己无数遍,因为我也是连续考研三次才通过的。我是一个“智商平平”的人,但还算比较努力,有幸“混入”高校,成了一名讲授软件开发技术 阅读全文
posted @ 2011-03-15 21:00 Cranny 阅读(329) 评论(0) 推荐(0) 编辑
摘要: DancingLinks在搜索中的应用1.1DancingLinks是什么DancingLinks是knuth在近几年写的一篇论文,在我看来是一类搜索问题的通用优化,因此我把它写下来,希望能在竞赛中得到一定的应用。1.2DancingLinks的主要原理是什么DancingLinks主要是用双向十字链表来存储稀疏矩阵,来达到在搜索中的优化。在搜索问题中,所需要存储的矩阵往往随着递归的加深会变得越来越稀疏,这种情况用DancingLinks来存储矩阵,往往可以取得非常好的效果。1.3这篇论文与knuth论文的不同本篇论文是对DancingLinks在竞赛的应用的一个介绍,并列举了几个竞赛中的例题 阅读全文
posted @ 2011-03-15 13:34 Cranny 阅读(9298) 评论(0) 推荐(7) 编辑
摘要: http://hi.baidu.com/socai/blog/item/8132e7872a953823c75cc3f5.htmlsc和c++调式 利用宏获得函数名仅仅为了获取函数名,就在函数体中嵌入硬编码的字符串,这种方法单调乏味还易导致错误,不如看一下怎样使用新的C99特性,在程序运行时获取函数名吧。 对象反射库、调试工具及代码分析器,经常会需要在运行时访问函数的名称,直到不久前,唯一能完成此 项任务并且可移植的方法,是手工在函数体内嵌入一个带有该函数名的硬编码字符串,不必说,这种方法非常单调无奇,并且轻易导致错误。本文将要演示怎样使用 新的C99特性,在运行时获取函数名。 那么怎样以编程 阅读全文
posted @ 2011-03-08 11:38 Cranny 阅读(2037) 评论(0) 推荐(0) 编辑