
C++
文章平均质量分 62
iamyuguo
还在一个鸟学校读书。
展开
-
解行列式
这是我刚开学不久写的解行列式的算法,原理很简单,就是将行列式按行、列展开计算。 #include using std::cin;using std::cout;template void input(int &d,T** &m){ cout>d; m=new T*[d]; for (int i=0;i cout for (int i=0;i原创 2008-02-12 02:49:00 · 1114 阅读 · 0 评论 -
求解马的周游路线
马的周游路线(knights tour)讲的是在一个国际象棋棋盘上,让一匹马用64步跳完64个格子的问题。我这个算法是按照深度优先算法搜索整个解空间,虽然对于 8*8 的棋盘时间消耗上还算很短,但其效率绝对还是不高的。后来看了易语言的示例,发现其实可以用贪心算法来找到马的周游路线,就是每次都走到剩下可行的步数最少的格子去——但是不理解原理。#include using namespace std原创 2008-02-12 03:01:00 · 1463 阅读 · 0 评论 -
求解数独
数独是一种折磨人的游戏,感兴趣却不懂者随便baidu一下就知道其规则了我的这个解法原理是先根据数独的规则,找出能快速确定的数字: 1,这一点能且仅能取某值; 2,这一行 / 列 / 格 没有其他的点能取某值。然后如果没有解出该数独则再用回溯法搜索解空间。此算法的效率相当不错。class sudoku{ char board_map [9][9];//盘面 char bac原创 2008-02-12 03:16:00 · 1075 阅读 · 1 评论 -
字符串匹配之Shift And算法
基于前缀的搜索——详情参阅《柔性字符串匹配》这本好书,别的就不多说了直接给出我的实现...template class Output_Function>size_t Shift_And(const char* source,const char* to_find,Output_Function out){/** * 在source中查找to_find,利用out输出每次出现的地方 * 返回to_f原创 2008-09-12 18:38:00 · 1448 阅读 · 0 评论 -
字符串匹配之Horspool算法
基于后缀,应该算是Boyer-Moore算法的简化算法,详情——嗯——依然参阅《柔性字符串匹配》这本好书(因为我肯定没法讲得比他清楚)。我的实现如下:templateclass OutputFunctionType >size_t Search_Horspool(const char* Str, const char* T, OutputFunctionType out)//在Str中寻找T,返回原创 2008-09-12 18:50:00 · 3592 阅读 · 1 评论 -
英语的数字——是多少呢
举个例子,nine hundred and eighty seven million six hundred and fifty four thousand three hundred and twelve,它究竟是多少呢?这种东西简直不是给人看的,所以呢,咱们想一个算法来翻译它吧。首先分析一下上面那个数字——嗯,断句先——nine hundred and eighty seven million原创 2008-09-12 18:09:00 · 1131 阅读 · 1 评论 -
POJ 1011 Sticks
写这篇文章呢,有个很邪恶的目的,就是提高博客的访问量——据我所知“POJ 1011”这个关键词似乎非常极其的热门——是不是?当时我做这题的时候的确就写了下面这么长的代码,不过你读一遍就会发现 3/4 的内容都被注释掉了,那些内容多少能说明我的思想,而剩下来的那部分是可以 AC 的。PS. 我真的不喜欢全局变量。PPS. 以后这里不会再放ACM的代码了;感兴趣的话可以等河蟹原创 2009-05-17 08:49:00 · 969 阅读 · 0 评论