我正在寻找一种迷宫生成算法,可以生成没有死角但只有开始和结束的迷宫.像这样:

图片来自http://www.astrolog.org/labyrnth/maze/unicursl.gif
我在哪里可以找到或者去构建这样的迷宫生成算法?
我正在寻找一种有效的算法,能够在双向N*M网格中找到尽可能随机的哈密顿路径.
有谁知道我在哪里可以找到,或者如何构建这样的算法?
我已经找到了一种有效的方法(见下图).这里的最终结果是哈密顿循环.删除随机边缘将使其成为哈密尔顿路径.该算法是有效的,但不提供足够的随机性.这种方法总是让路径的起点和终点彼此相邻,而我希望将它们放在随机位置. 空间填充曲线http://img593.imageshack.us/img593/8060/sfc.png 图片取自http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.35.3648&rep=rep1&type= PDF格式