自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

oRbIt 的专栏

从明天起,做一个幸福的人,喂马、劈柴、周游世界。。。

  • 博客(51)
  • 资源 (11)
  • 收藏
  • 关注

原创 第6-6课:游戏中的 Zobrist 哈希算法和置换表(图文篇)

复杂棋类游戏的搜索和估值通常比较耗时,为了提高棋类游戏的 AI,人们通常会使用置换表,置换表存储的是一些已知棋局的评估结果,当遇到相同的棋局时,查置换表比再搜索一遍要高效。既然要查表,就意味着需要对棋局进行比较,人们通常采用哈希算法将棋局映射为固定长度的哈希值,然后通过比较哈希值实现对棋局的比较。在各种哈希算法中,Zobrist 哈希算法简单实用,并且高效,在各种棋类游戏算法中得到了广泛的应...

2020-09-22 12:17:06 1669

原创 第6-7课:Pierre Dellacherie 算法与俄罗斯方块游戏

编写一个俄罗斯方块游戏,涉及到键盘控制、定时器、UI 和复杂数据结构定义和使用,非常具有挑战性,很多编程爱好者自己也编写过俄罗斯方块游戏,该游戏有自己的 AI 算法,基本原理还是状态搜索和评估,这一课我们介绍著名的估值算法、Pierre Dellacherie 算法。当然,建立游戏的数据模型仍然是我们的重点。俄罗斯方块游戏 AI 的原理在游戏过程中,当一个板块下落的时候,旁边还会提示下...

2020-09-22 12:17:04 766

原创 第6-8课:分离轴算法(SAT)与碰撞检测(图文篇)

物体的碰撞检测是游戏软件中的关键算法之一,两个角色是否能够对话、子弹是否击中了物体,以及是否出现人物穿墙的 bug,都依赖于一套可靠的碰撞检测算法。有很多算法可以实现碰撞检测,基于算法几何的方法有轴对称包围盒算法(Axis-aligned Bounding Box,AABB)、方向包围盒算法(Oriented Bounding Box,OBB)、分离轴算法(Separating Axis T...

2020-09-22 12:17:03 1779

原创 第7-1课:余弦相似度与相似算法(图文篇)

相似度算法是计算个体之间相似程度的算法,此类算法多如牛毛,这里我们只讨论用于处理文字之间相似度的算法。文本之间的相似度计算应用广泛,比如论文抄袭的判断,就可以用相似度算法先预筛查一遍;再比如网站的文章自动分类,就是根据相似度将文章自动分入科技、体育、军事等类别中。此外,广告推送、订单识别等场合,也会用到文本相似度的判断。余弦相似度(余弦距离)通常用于判断相似度的理论有很多,比如欧氏距离...

2020-09-22 12:17:01 2146

原创 第7-2课:垃圾邮件过滤与贝叶斯分类算法

分类算法有很多种理论,比如决策树理论、K-最近邻法(KNN)理论、朴素贝叶斯理论、神经网络理论等,每种理论都有对应的分类算法。贝叶斯分类算法是众多分类算法中的一种,确切地说是一类,因为这类算法都是以贝叶斯定理为理论基础,所以被统称为贝叶斯分类。这一课我们将介绍贝叶斯分类算法,并用贝叶斯分类算法做一个简单的文本分类器,演示区分垃圾邮件和正常邮件的过滤器原理。贝叶斯定理贝叶斯(Thomas...

2020-09-22 12:17:00 1179

原创 第7-3课:K 最邻近算法(KNN)与手写数字识别

K 最近邻(KNN,K-Nearest Neighbor)算法是一类在数据挖掘领域常用的分类算法,该算法看似神秘,其实原理很简单,算法实现也很简单。KNN 算法在类别决策时,只参考极少量的相邻样本,也就是说主要靠周围有限的邻近样本,而不是靠判别类域的方法来确定所属类别,因此对于类域的交叉或重叠较多的待分样本集来说,KNN 方法较其他方法更为适合。这一课我们用 KNN 算法来实现一个简单的手写...

2020-09-22 12:16:58 445

原创 第7-4课:最大匹配算法-最简单的中文分词算法

在自然语言识别领域中,中文的分词技术绝对是一个很有意思的话题,英文本身是以单词为基础,单词之间以空格隔开,不存在分词的问题,但是汉语有这个问题。关于分词有很多可玩的地方,比如之前很火的一个对对联的小程序,给出上联可以自动对出下联,对上联的识别肯定是建立在正确的分词基础上的。这一课我们介绍一种理论简单、实现也简单的分词方法,当然,效果也就那样了,不过,拿来玩玩还是可以的。最大匹配法中文的...

2020-09-22 12:16:57 620

原创 第7-5课:格式化文件读写与 PCX 图像文件

这一课将介绍对格式化文件读写处理的常用算法,其实也算不上是算法,基本上是对有固定格式的二进制文件的常用处理方法,当然,解压缩数据的时候用到了 RLE(行程长度压缩)算法。我们选择的 PCX 文件是一种非常简单的图像文件格式,在 DOS 时代和早期的 Windows 时代非常流行。下面将讲解如何按照文档介绍的格式读取文件、显示图像内容,并按照文档要求的格式生成新的图像文件,当然,也会讲解大名鼎...

2020-09-22 12:16:55 464

原创 第7-6课:遗传算法的两个应用实例

之前我们介绍过一些求最优解的常用算法模式,比如贪心算法、动态规划算法、穷举算法,都是采用一种确定或几乎确定的方式来寻找最优解。所谓的确定性是指以上这些算法都是建立在确定性基础上的搜索算法,在搜索过程中遇到一个决策点时,对于选 a 还是选 b,其结果是确定的。比如贪婪法,就是按照贪婪策略选择,同样的条件下,每个决策选 1000 次结果都是一样的。 这一课我们要介绍的是随机化算法,该算法并不...

2020-09-22 12:16:54 5184

原创 结语:算法的那些事儿

终于,在 2019 年的第一天下午,《算法应该怎么玩》的最后一篇完成了,时间比我预想的要长(很多)。因为写一个精品课和写书是两个完全不同的体验,写精品课可以边根据读者的反馈边调整、完善内容,能和读者有一个直接的接触,了解他们的想法或遇到的问题;而写书就不同了,必须全部完稿后,经过三审三校才能出版,而这期间,万一遇到技术升级等,那么图书出版后还要考虑后面的修订版……学习算法要达到的目的当大家看到...

2020-09-22 12:16:52 296

原创 C++20,说说 Module 那点事儿

几天前,C++20 草案已经获得了标准委员会的全票通过,C++2a 草案讨论的几个重要内容,比如“概念(concept)”、“范围库(Ranges Library)”、“协程(Coroutines)” 和 “模块(Module)” 都加到 C++20 的标准中了,剩下的就是看编译器厂商的支持速度了。目前看 CLANG 、GCC 和 Microsoft 是比较积极的三家,语言特性和库支持的最快的是 GCC,其次是 CLANG 和 Visual C++,估计最快到年底就能看到支持全部 C++ 20 特性的编译器

2020-09-19 14:32:46 3164

TabSiPlus_bin.zip

TabSiPlus 最新版本,支持 Source Insight 4.x 版本。

2019-08-25

thunderbird 2_0_0_16 中文语言包

thunderbird 2_0_0_16 中文语言包 用thunderbird的源代码编译后没有中文界面的解决方法可参看链接 http://blog.csdn.net/orbit/archive/2008/09/06/2891622.aspx

2008-09-06

firefox 3_0_1 中文语言包

firefox 3_0_1 中文语言包, 用firefox的源代码编译后没有中文界面的解决方法可参看链接 http://blog.csdn.net/orbit/archive/2008/09/06/2891622.aspx

2008-09-06

boost 用户手册(很多已经翻译成中文)

boost 用户手册(很多已经翻译成中文),针对1.34.1 版本,不过对于学习来说够了

2008-09-06

Google Breakpad 源代码

如果你开发了一个需要发布到用户电脑上的客户端小程序,你当然不会在程序的可执行文件中包含符号表之类的调试信息,你当然也不想麻烦你的用户在程序崩溃时把计算机抱来给你检修——但你却一定想知道,万一你的程序在用户的计算机上崩溃,该如何了解崩溃那一刻程序的状态,特别是对程序调试至关重要的堆栈状态呢? 试试Breakpad吧,无论你的程序运行在Windows平台,Mac OS X平台还是Linux平台,Breakpad都可以帮你截获程序崩溃那一刹那的重要信息。利用Breakpad,你可以在程序中加入自己的灾难响应装置,就像为程序加装安全气囊。你可以获取程序崩溃时可能为后期调试提供帮助的所有重要信息。你还可以在自己的灾难响应代码中把这些重要信息发回给自己,然后利用符号分析和调试工具,在不需要接触用户环境的情况下找到程序的错误原因。

2008-09-06

TCPIP 详解卷2的源代码(一个完整的TCPIP协议栈)

TCPIP 详解卷2的源代码(一个完整的TCPIP协议栈)

2008-09-06

cppunit-1.12.1

单元测试工具 cppunit 的最新版本

2008-09-06

Visual Studio .NET使用技巧手册

Visual Studio .NET使用技巧手册,涵盖VS2002,2003和2005

2008-09-06

Herb Sutter - Conversation 经典对话系列

本人收集并珍藏的Herb Sutter - Conversation经典对话系列,共59篇,包含最后一篇的作者通知,也就是结束语

2008-09-06

用Visual Studio 2005编译Firefox所需要的补丁

用Visual Studio 2005编译Firefox所需要的两个头文件补丁,替换系统原来的头文件可以解决用Visual Studio 2005编译Firefox的错误

2008-08-18

Source Insight文件标签外挂TabSiPlus 源代码

TabSiPlus for Source Insight外挂插件的源代码,版本是0.99b1

2008-01-21

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除