算法
xueruifan
这个作者很懒,什么都没留下…
展开
-
连连看游戏的实现
连连看是一种很经典的休闲类游戏,并且其实现并不复杂,非常适合练手。本文旨在介绍连连看游戏中的核心算法并给出一个基于fancy2D的简单实现。一、游戏规则连连看游戏的规则想必大家都很清楚:通过逐步消除相同图案的格子来完成游戏。但是要求被消除的两个格子之间必须能够用一条不多于两个转折的、平行于XY轴的折线相连。二、核心算法对于连连看而言,其核心算法就是如何产生随机的格子地图以及转载 2015-08-25 03:07:18 · 3243 阅读 · 0 评论 -
爱因斯坦 上楼梯问题 若每步跨2阶,剩1阶 两种方法
爱因斯坦出了一道这样的数学题:有一条长阶梯,若每步跨2阶,则最最后剩一阶,若每步跨3 阶,则最后剩2阶,若每步跨5阶,则最后剩4阶,若每步跨6阶则最后剩5阶。只有每次跨7阶,最后才正好一阶不剩。请问这条阶梯共有多少阶?两种方法:方法1:从1开始逐个累增进行试验unsigned int GetStairNum (){ for(unsigned int n = 1; ;++n) {原创 2016-01-24 19:36:36 · 17873 阅读 · 2 评论 -
二维数组的列排序 考虑问题的全局性 声明数组必须要分配内存并清零
以“二维数组的列排序”为例练习“ 考虑问题的全局性"以及“ 声明数组必须要分配内存并清零”:题目要求:给出一个二维数组,请将这个二维数组按第i列(i从1开始)排序,如果第i列相同,则对相同的行按第i+1列的元素排序,如果第i+1列的元素也相同,则继续比较第i+2列,以此类推,直到最后一列。如果第i列到最后一列都相同,则按原序排列。 实现以下接口:输入一个m*n原创 2016-01-25 17:40:55 · 702 阅读 · 0 评论