一.题目简介本次的项目是编写一个斗地主的小游戏,实现语言:java;主要完成了GUI设计、计时线程、算法。本次项目的主要目的是对算法的学习。算法分析在心得里面。技术难点:1.图片的移动 2.计时线程的设定 3.对牌的分割,必须考虑到优先拆分方案,将权值低的拆分方案舍去。 4.在删除的时候遇到问题了,...
分类:
其他好文 时间:
2015-05-17 23:23:39
阅读次数:
163
前言:今天接着学习动态规划算法,学习如何用动态规划来分析解决矩阵链乘问题。首先回顾一下矩阵乘法运算法,并给出C++语言实现过程。然后采用动态规划算法分析矩阵链乘问题并给出C语言实现过程。1、矩阵乘法 从定义可以看出:只有当矩阵A的列数与矩阵B的行数相等时A×B才有意义。一个m×r的矩阵A...
分类:
编程语言 时间:
2015-05-17 11:58:08
阅读次数:
176
(转)导弹跟踪算法很多玩过飞行射击类游戏的朋友都对跟踪导弹印象深刻,手中有这样一款武器常常能够战无不胜,但是敌人射出的导弹则可能成为玩家的噩梦。其实实现导弹跟踪的方法并不复杂,只需要一些简单的平面解析几何知识就可以做到。算法分析 假设导弹旋转角速度为omega,运动速度为v。下图显示了导弹和目标在坐...
分类:
编程语言 时间:
2015-05-12 22:29:23
阅读次数:
187
问题描述:最大间隙问题:给定n个实数,求这n个数在实轴上相邻2个数之间的最大差值。设计解最大间隙问题的线性时间算法。算法分析:问题很简单,而且描述本身就暗示了一种自然的求解方法,即先对元素排序,然后逐个求相邻元素的间距。这种解法的复杂度为O(n*logn)。再想一下,设 min, max分别是数组中...
分类:
其他好文 时间:
2015-05-10 16:59:57
阅读次数:
242
问题描述:一本书的页码从自然数1开始顺序编码直到自然数n。书的页码按照通常的习惯编排,每个页码都不含多余的前导数字0。例如第6页用6表示而不是06或006。数字统计问题要求对给定书的总页码,计算出书的全部页码中分别用到多少次数字0,1,2,3,.....9。算法分析:比如,对于一个数字34567,我...
分类:
其他好文 时间:
2015-05-10 00:59:44
阅读次数:
181
参考书籍:《数据结构与算法分析——C语言描述》
快速排序是在实践中最快的已知排序算法,它的平均时间复杂度O(NlogN)。当然在最坏的情况下为O(N^2),但稍加努力就可以避免这种情形。
像归并排序一样,快速排序也是一种分治的递归算法,可简单表示如下:
将数组S排序的基本算法由下列简单的四步组成。
1、数组元素至少大于或等于4个,否则直接利用插入排序完成。
2、利用特定方法(三数...
分类:
编程语言 时间:
2015-05-09 16:40:30
阅读次数:
129
最近思来想去,眼看着自己就要进某厂游戏安全团队实习了,也不能整天的无所事事,所以就寻思着先找点最简单的游戏用来练练手。想到之前逆向过一些小游戏,就把之前分析的扫雷整理了一下啊,写了个外挂,发了上来。...
分类:
编程语言 时间:
2015-05-06 21:17:52
阅读次数:
649
分析:该題可以通过求最长回文串的方法来解决;求最长回文串使用manacher算法,O(n)时间复杂度。
注意:while(a[i-len[i]]==a[i+len[i]] && a[i-len[i]]
#include
using namespace std;
#define N 100010
int len[N<<1];
int a[N<<1];
int Manacher(int n)
...
分类:
编程语言 时间:
2015-05-05 21:57:17
阅读次数:
190
问题描述: 给定n个矩阵:A1,A2,...,An,其中Ai与Ai+1是可乘的,i=1,2...,n-1。确定计算矩阵连乘积的计算次序,使得依此次序计算矩阵连乘积需要的数乘次数最少。输入数据为矩阵个数和每个矩阵规模,输出结果为计算矩阵连乘积的计算次序和最少数乘次数。问题解析: 由于矩阵乘法满足结.....
分类:
编程语言 时间:
2015-05-03 18:47:51
阅读次数:
162
题目:海滩上有一堆桃子,五只猴子来分。第一只猴子把这堆桃子凭据分为五份,多了一个,这只猴子把多的一个扔入海中,拿走了一份。第二只猴子把剩下的桃子又平均分成五份,又多了一个,它同样把多的一个扔入海中,拿走了一份,第三、第四、第五只猴子都是这样做的,问海滩上原来最少有多少个桃子?算法分析://初始桃子数...
分类:
编程语言 时间:
2015-04-30 19:54:08
阅读次数:
236