算法
文章平均质量分 85
囧
这个作者很懒,什么都没留下…
展开
-
阮一峰:字符串匹配的KMP算法
字符串匹配是计算机的基本任务之一。 举例来说,有一个字符串"BBC ABCDAB ABCDABCDABDE",我想知道,里面是否包含另一个字符串"ABCDABD"? 许多算法可以完成这个任务,Knuth-Morris-Pratt 算法(简称 KMP)是最常用的之一。它以三个发明者命名,起头的那个K就是著名科学家 Donald Knuth。 这种算法转载 2013-05-02 13:52:14 · 1384 阅读 · 0 评论 -
阮一峰:字符串匹配的Boyer-Moore算法
上一篇文章,我介绍了 KMP 算法。 但是,它并不是效率最高的算法,实际采用并不多。各种文本编辑器的"查找"功能(Ctrl+F),大多采用 Boyer-Moore 算法。 Boyer-Moore 算法不仅效率高,而且构思巧妙,容易理解。1977 年,德克萨斯大学的 Robert S. Boyer 教授和 J Strother Moore 教授发明了这种算法。转载 2013-05-03 16:45:45 · 739 阅读 · 0 评论 -
用位运算实现四则运算之加减乘除(用位运算求一个数的1/3)
听同学百度二面中,不准用四则运算操作符来实现四则运算。一想就想到了计算机组成原理上学过的。位运算的思想可以应用到很多地方,这里简单的总结一下用位运算来实现整数的四则运算。加法运算:[cpp] view plain copyint AddWithoutArithmetic(int num1,int num2) { if(nu转载 2016-07-01 10:43:05 · 589 阅读 · 0 评论 -
三大迷宫生成算法 (Maze generation algorithm) -- 深度优先,随机Prim,递归分割
本文主要讲解的迷宫生成算法有三种:1.Recursive backtracker ( 递归回溯,也是深度优先算法)2.Randomized Prim's algorithm(随机Prim算法,让我想起了最小生成树的Prim算法)3.Recursive division (递归分割算法)首先,为了方便后续处理,默认的迷宫元素表示为[x,y,w]:1.我们的迷宫为常规的矩形,因此可以用二维表示一个迷宫...转载 2018-05-07 14:24:23 · 1264 阅读 · 0 评论 -
随机迷宫生成算法整理分析
搜集整理了一些游戏迷宫生成的算法与实现前言前段时间学校游戏开发课大作业,做了一个Roguelike的恐怖游戏。搜集整理了一些迷宫生成的算法。当初也受了indienova上一些文章的启发。现在在此把学到的一些东西理一理分享出来。第一次写这种东西,感觉有点啰嗦,还请大家不要介意,也可以直接看项目地址代码写在Unity环境下,应该可以直接使用。第一种算法先上一张图这是我最早拍脑袋凭着感觉写的一个算法结果...转载 2018-05-07 14:25:31 · 5248 阅读 · 1 评论 -
房间和迷宫:一个地牢生成算法
转自:https://indienova.com/indie-game-development/rooms-and-mazes-a-procedural-dungeon-generator/文章来源微博上的 @大城小胖(indienova 个人资料)向我们推荐了这篇文章,在此表示感谢。本文的作者是:Bob Nystroms,本文的转载和翻译已经获得了他的授权。原文地址在:Rooms and Maz...转载 2018-05-07 14:27:35 · 5176 阅读 · 0 评论