![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
棋类算法整理
xiaodan007
魔导士
展开
-
关于火牛陷阵的思考
夜读《火牛陷阵》,觉得挺有意思的,整理和分析了下。故事大意:战事发生在即墨(山东青岛的一个区),燕国攻击齐田, 齐田大将田单就集齐一千头牛,把它们打扮起怪样,在尾巴点火, 令牛和士兵一起冲击敌营。 敌营被吓得屁滚尿流,主将被斩杀。齐国打了个大胜仗。问题:牛着火后怎么只向前冲?牛能跑多长距离?敌人为何没有“防护罩”?成功案例:田单“火牛阵”击败五国联军。 王玄策用“火牛阵”一战击溃印度数万象军。 汉尼拔也用过“火牛阵”击败过罗马军队。失败案例:唐房琯使用火牛阵原创 2022-02-09 01:44:19 · 1437 阅读 · 0 评论 -
虚继承与虚函数
#include using namespace std;/*//有时会面临如果不用多继承则结构混乱的问题(结构混乱,例如把某些模块特有的数据和服务放在共有区(例如类变量),这样如果一旦要维护修改,则必须先理清模块间的关系才能,但如果不放在共有区类变量, 则又能长期保存和便于存取。这时可以考虑分类,将通过权限来防止设计上的问题出现,从而提高可维护性)以下是一种方法:原创 2010-04-05 22:19:00 · 576 阅读 · 1 评论 -
生成博弈树模拟结点(测试桩)
#pragma once#include #include using namespace std;class Chess_MoveTree{ //二维数组存的多叉树,标号从0开始public: Chess_MoveTree(void); ~Chess_MoveTree(void); //生成多叉树,默认是生成12层的4叉树,约6百万个节点 void Create(const int原创 2010-04-05 22:24:00 · 911 阅读 · 0 评论 -
AlphaBeta_SameStruct
/**文件名: AB剪枝*创建人: 陈泽丹*/ #pragma once#include "SearchEngine.h"class AlphaBeta_SameStruct: public SearchEngine{public: AlphaBeta_SameStruct(void); virtual ~AlphaBeta_SameStruct(void); void S原创 2010-04-05 22:21:00 · 599 阅读 · 0 评论 -
AlphaBeta_SameFun
/**文件名: AB剪枝*创建人: 陈泽丹*/ #pragma once#include "SearchEngine.h"class AlphaBeta_SameFun: public SearchEngine{public: AlphaBeta_SameFun(void); virtual ~AlphaBeta_SameFun(void); void SearchAG原创 2010-04-05 22:22:00 · 598 阅读 · 0 评论 -
SearchEngine
2,SearchEngine #pragma once#include "Chess_MoveTree.h"class SearchEngine{public: SearchEngine(void); virtual ~SearchEngine(void); virtual void SearchAGoodMove() = 0; void原创 2010-04-05 22:19:00 · 773 阅读 · 0 评论 -
RTTI、虚函数和虚基类的开销分析及使用指导
RTTI、虚函数和虚基类的开销分析及使用指导 “在正确的场合使用恰当的特性” 对称职的C++程序员来说是一个基本标准。想要做到这点,首先要了解语言中每个特性的实现方式及其开销。本文主要讨论相对于传统 C 而言,对效率有影响的几个C++新特性。相对于传统的 C 语言,C++ 引入的额外开销体现在以下两个方面:编译时开销模板、类层次结构、强类型检查等新特转载 2010-04-22 09:43:00 · 628 阅读 · 0 评论 -
单例模式的问题
转单例模式也称为单件模式、单子模式。使用单例模式,保证一个类仅有一个实例,并提供一个访问它的全局访问点,该实例被所有程序模块共享。有很多地方需要这样的功能模块,如系统的日志输出等。 单例模式有许多种实现方法,在C++中,甚至可以直接用一个全局变量做到这一点,但这样的代码显得很不优雅。《设计模式》一书中给出了一种很不错的实现,定义一个单例类,使用类的私原创 2010-04-22 10:51:00 · 1026 阅读 · 0 评论