recursive-backtracking相关内容

为什么按分号后程序又回到深度递归?

我正在尝试理解分号的功能. 我有这个代码: del(X,[X|Rest],Rest).德尔(X,[Y|尾巴],[Y|休息]):-德尔(X,尾巴,休息).排列([],[]).排列(L,[X|P]):- 德尔(X,L,L1),排列(L1,P). 这是显示给定列表的所有排列的简单谓词. 我在 SWI-Prolog 中使用了内置的图形调试器,因为我想了解它是如何工作的,并且我了解返回参数中 ..
发布时间:2022-01-12 10:19:12 其他开发

用特定账单表示金额

我想在 Racket 中编写一个函数,它需要一笔钱和一个特定账单价值的列表,然后返回一个列表,其中包含每种类型使用的账单数量以构成给定金额.例如 (calc 415 (list 100 10 5 2 1)) 应该返回 '(4 1 1 0 0). 我以这种方式尝试过,但这不起作用:/说实话,我想我还没有完全理解您可以/不能使用 Racket 中的 set! 做什么. (define (cal ..

递归回溯如何工作?电脑爱好者数独解算器

我对回溯感到很困惑,因为当递归调用返回时,您是否不会通过将网格替换回零来替换找到的解决方案.因此,即使您找到了解决方案,它也不会被删除,因为在调用 solve 函数后,您将通过将值替换回零来取消您所做的工作.我知道您正在回溯,但在包含所有正确值的最终递归调用中,您不只是将所有内容都替换为 0? # grid = ..... # 定义为全局值,# 一个包含 9 个列表的列表,每个列表有 9 个长度 ..
发布时间:2021-07-05 19:20:50 Python

如何通过回溯和递归来解决数独?

我之所以创建这个新线程,而不是仅仅阅读之前针对这个特定问题的答案,是因为我觉得我只是不完全理解其背后的全部想法.我似乎无法理解整个回溯概念.因此,我需要完全了解回溯,然后解决特定的数独问题. 到目前为止,我了解的是,回溯是一种可以回溯的技术,例如,如果人们发现在当前状态之前做出的决定导致了死胡同,则该回溯是一种递归流程.因此,您返回尝试其他方法,然后再次继续. 因此,在我的数独示例中, ..
发布时间:2020-07-05 19:36:12 Java开发

骑士巡回赛持续时间太长

在8x8板上进行回溯可以解决骑士巡回赛的问题持续多长时间?因为我的算法已经准备好了某种时间,而且似乎无法完成.但是,当我尝试使用6x6或5x5电路板时,它可以成功完成. 代码: class KnightsTour{ private boolean[][] board; private int count, places; private static final Point[] mo ..
发布时间:2020-07-05 19:35:02 Java开发

单跳最多回溯n个楼梯n步

您需要爬上n个台阶的楼梯,然后决定通过跳下台阶进行一些额外的锻炼。一次跳转最多可以覆盖k个步骤。返回您可能要爬上楼梯的所有可能跳序列,按顺序排序。 我的实现显然给了我错误的答案。 def爬升楼梯(n,k): final_res = [] final_res.append(CSR(n,k,[]) ) 返回final_res def CSR(n,k,res):如果n == ..

固定值不在列和行上重复

我想在R中创建一个矩阵,该矩阵具有一定数量的变量(例如1到10).这些变量应在行和列上随机分配,但BUT不应在任何一个中重复(因此,数字1应该在第1行中一次,在第1列中一次)! 例如: 1,2,3,4,5,6,7,8,9,10 2,3,4,5,6,7,8,9,10,1 3,4,5,6,7,8,9,10,1,2 4,5,6,7,8,9,10,1,2,3 5,6,7 ..
发布时间:2020-05-07 18:56:45 其他开发

迷宫网格生成算法

什么是最好的算法来生成网格迷宫? 我听到Kruskal算法和递归backtracker除其他的但是这两种依靠walls.What将是最好的算法创建惊奇其中一个整个细胞是壁? 解决方案 修改递归回溯或Prim算法应该是很简单的的维基百科) 随机Prim算法 在开始用填充单元网格。 选择一个单元格,将其标记为迷宫的一部分。添加的小区的周边填充细胞对小区列表。 虽然有细胞在列表中: 从列表中 ..
发布时间:2015-11-30 21:19:27 C/C++

什么时候该算法破字的复杂性? (动态规划)

字歇(用动态规划:上>下) 给定一个字符串s和文字的字典dict,以s加空格来构造一个句子 其中每个字是一个有效的字典中的单词。 返回所有这些可能的句子。 例如,因为 S =“catsanddog”, 字典=“猫”,“猫”,“和”,“沙”,“狗”。 一个解决方案是[“猫与狗”,“猫沙狗”。 问: 在时间复杂度? 在空间的复杂性? 我个人认为, 在时间复杂度= O( ..