摘要: /**************************************回溯算法求集合的幂集*****************************************回溯算法的求解过程实质上是遍历一颗"状态树"(又称解空间树)的过程,只是这棵树不是遍历前预先建立的,而是隐含在遍历过程中。而对解空间树的遍历又分为深度优先搜索(DFS)和广度优先搜索(BFS),在算法课本上把DFS称为回溯法,把BFS称为分支界限法。更进一步的要求是在搜索过程中不断剪枝,跳过肯定无解的情况,提高效率。数据结构课本149页的题目演示了最简单的回溯算法***************** 阅读全文
posted @ 2010-06-05 01:12 java简单例子 阅读(791) 评论(0) 推荐(0) 编辑
摘要: 首先简述一下题目 :有一个正方形水池,长100,宽100, 池塘的正中心在坐标原点上,x轴向右为正,y轴向上为正,所以池塘的右上角坐标是(50,50)。池塘内分布着一些鳄鱼,鳄鱼的数目和坐标都已知(注1),邦德的最大跳跃距离也已知(注1)。邦德踩着鳄鱼头逐步跳上岸,问:最少的步数是多少?如果能跳出的话请给出一种跳法。这道题乍一看很晕,待我建模给大家看。我们假设从原点O,第一次能跳到的鳄鱼编号为A1,A2,...,踩着A1能跳到的鳄鱼为B11,B12,....,踩着A2能跳到的鳄鱼为B21,B22,......。也就是说,邦德能跳的路线可以由如下树性结构来表示。 O / | A1 A2 A3 / 阅读全文
posted @ 2010-06-05 01:11 java简单例子 阅读(1183) 评论(0) 推荐(0) 编辑