recursion相关内容

Prolog将分钟转换为小时

这是我创建的代码. mins_to_hours(In, H, M):-在= 60 时,H是H1+1,In1 是 In-60,mins_to_hours(In1, H1, M). 当分钟数小于 60 时,它可以正常工作,例如 ?- mins_to_hours(20,H,M).H = 0,米 = 20 ;错误的 ..
发布时间:2022-01-12 10:42:32 其他开发

Prolog - 在列表中查找相邻元素

我正在尝试定义一个谓词 adjacent(X, Y, Zs) 如果 X 和 Y 在列表中相邻,则该谓词为真.我的代码目前是这样的: 相邻(_, _, []).相邻(X,Y,[X,Y|尾巴]):-相邻(X,Y,尾). 它适用于 adjacent(c, d, [a, b, c, d, e]) 的基本情况,但由于基本情况,所有其他情况也返回 true,而我一直坚持这一点. 另一个问题是,如果 ..
发布时间:2022-01-12 10:29:01 其他开发

后缀表达式列表求值

我编写了一个程序来从表达式列表中递归地评估 prolog 中的后缀表达式.例如,给定以下列表: [+,1,2] 它应该返回 3.我构造谓词的方式是递归地调用自身,直到它到达列表的末尾,以便它向后读取值.(与从左到右阅读此列表相同:[2,1,+]). 我的问题是,当我尝试通过递归调用返回多个值时,所有值都会突然消失. 代码如下: eval_list([Head|Tail],_,Re ..
发布时间:2022-01-12 10:20:41 其他开发

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

我正在尝试理解分号的功能. 我有这个代码: 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 其他开发

Prolog:在列表列表中以整数拆分列表

我想将通过整数分隔的单词列表拆分为列表列表. 示例查询和预期结果: ?- 单独的单词([h,e,l,l,o,1,o,v,e,r,3,t,h,e,r,e], X).X = [[h,e,l,l,o],[o,v,e,r],[t,h,e,r,e]]. 我已经实现了以下几点:将列表拆分为第一个整数之前的一个列表和第一个整数之后的一个列表: 带有结果的示例查询: ?- take1word([ ..
发布时间:2022-01-12 10:17:41 其他开发

Prolog查找所有路径实现

我的任务是在 Prolog 中实现 findall 的一个版本,而不使用除 not 和 cut 之外的任何 Prolog 内置插件 - 所以基本上是在纯 Prolog 中. 我正在尝试在树中搜索所有直系后代并在列表中返回结果 父(a,b).父母(b,c).父母(b,d).父母(e,d). 到目前为止我所拥有的是: find(X, L) :- find2(X, [], L).find2( ..
发布时间:2022-01-12 09:59:11 其他开发

计算子句的调用次数

我有一个类似如下的子句: lock_open:-条件组合(X),等于(X,[8,6,5,3,6,9]),!,打印(X). 此子句成功.但我想知道在 equal(X,[8,6,5,3,6,9]) 变为真之前调用了多少次 conditional_combination().该程序是通过遵循一些规则来生成一个排列.而且我需要生成多少排列才能获得像 865369 这样的特定值. 解决方案 你真 ..
发布时间:2022-01-12 09:54:35 其他开发

为什么stackoverflow错误很混乱?

这个简单的 C 程序很少以相同的调用深度终止: #include #include 无效递归(无符号整数记录);诠释主要(无效){递归(1);返回0;}无效递归(无符号整数记录){printf("%u\n", REC);递归(rec + 1);} 这种混乱行为背后的原因可能是什么? 我正在使用 fedora(16GiB ram,堆栈大小为 8192) ..
发布时间:2022-01-11 23:30:32 其他开发

C++ 中相互包含的标头

我是 C++ 新手,但我无法在网上找到这个(很可能是微不足道的)问题的答案.我在编译一些两个类相互包含的代码时遇到了一些麻烦.首先,我的#include 语句应该放在宏的内部还是外部?在实践中,这似乎并不重要.但是,在这种特殊情况下,我遇到了麻烦.将#include 语句放在宏之外会导致编译器递归并给我“#include 嵌套太深"的错误.这对我来说似乎很有意义,因为在调用 #include 之前 ..
发布时间:2022-01-11 15:58:00 C/C++开发

用于复制整个 Google Drive 文件结构的 Google Apps 脚本;如何避免超时?

我的单位正在切换到 Google 企业帐户,每个人都需要将他们的云端硬盘文件转移到他们的新帐户.Drive 不允许在这些帐户之间转移所有权,因此我创建了一个脚本来将文件和文件夹从旧帐户复制到新帐户.(旧帐户的内容已移至与新帐户共享的文件夹中.) 这是我目前所拥有的: function copyDrive() {var originFolder = DriveApp.getFolderByI ..

帮助 PHP 递归导航列表菜单

我正在尝试将动态递归导航列表菜单添加到正在处理的网站.场景是菜单有 2 个由 parentid(preid) 关联的级别. 我的问题是我可以正确显示第一级列表,但是我无法正确显示第二级.我不确定在哪里添加第二级的 UL 和/UL 标签. 这就是我所追求的 项目 1 第 2 项 第 3 项 子项目 1 子 ..
发布时间:2022-01-10 17:39:07 PHP

Python - 递归和列表

如何使用 Python 生成一个列表,其中每个元素都是前面数字的总和. 这是一个例子: 输入:[ 25690.16, -34010.61, 9278.44, -808.00, -2126.95, 3920.19, -1793.23, 997.54, -1142.55, -69349.58 ]25690.16 + -34010.61 = -8320.45-8320.45 + 9278.44 ..
发布时间:2022-01-09 16:41:39 Python

递归地对数组中的整数求和

我有一个程序,我正在尝试为类创建一个使用递归返回数组中所有整数之和的程序.到目前为止,这是我的程序: 公共类 SumOfArray {私人 int[] a;私人诠释 n;私有 int 结果;公共 int sumOfArray(int[] a) {这.a = a;n = a.长度;if (n == 0)//基本情况结果 = 0;别的结果 = a[n] + sumOfArray(a[n-1]);返回 ..
发布时间:2022-01-09 15:46:07 Java开发

在 Python 中生成所有可能的长度为 N 且总和为 S 的列表

我正在尝试生成所有可能的长度为 N 且总和为 S 的列表.我已经编写了一些代码来执行此操作,但是对于任何大的(特别是,我想要 N=5,S=100),我遇到内存溢出错误. 我正在寻找更好的解决方案或改进代码的方法,以便我可以在 N=5、S=100 上运行它.下面这两个程序协同工作以在嵌套列表中创建所有可能的数字组合,然后将它们重新加工成正确的格式.下面复制了一些示例输出. 我知道我的代码 ..
发布时间:2022-01-09 15:43:30 Python

二叉搜索树递归插入不显示任何内容

我在二叉搜索树上做一个小的 Java 工作,但是当我在树中实现一个节点的递归插入并显示它时,我什么也没得到.我已经研究了一段时间了,我不确定,但我认为这是一个通过引用的问题. 这是我的代码: 公共类 BST {私有 BSTNode 根;公共 BST() {根=空;}公共 BSTNode getRoot() {返回根;}公共无效插入R(BSTNode根,可比元素){如果(根==空){root ..
发布时间:2022-01-09 13:02:38 Java开发

C# 使用 FTP 上传整个目录

我要做的是在 C# (C Sharp) 中使用 FTP 上传网站.所以我需要上传一个文件夹中的所有文件和文件夹,保持它的结构.我正在使用这个 FTP 类:http://www.codeproject.com/Tips/443588/Simple-Csharp-FTP-Class 用于实际上传. 我得出的结论是,我需要编写一个递归方法,遍历主目录的每个子目录并上传其中的所有文件和文件夹.这应该 ..
发布时间:2022-01-09 11:43:38 C#/.NET

在导出文件期间检测到打开代码语句递归

我尝试在 SAS 中导出文件,但我得到“检测到打开代码语句递归".错误.由于我根据日期导出多个文件,因此我根据提示日期定义为宏变量,因此我想将我的文件命名为使用此变量导出,但它不起作用.如果有人帮助我,我将不胜感激. rep_date = 30APR2015:00:00:00输出文件 = work.A042015.sas7%let var = CATS("A",MONTH(DATEPART(&r ..
发布时间:2022-01-08 17:29:02 其他开发

SQL - 每个级别都有记录的递归树层次结构

尝试使用 SAS(据我所知不支持 WITH RECURSIVE)在 SQL 中创建经典的层次结构树. 这是现有表中的简化数据结构: |USER_ID|SUPERVISOR_ID| 因此,要构建层次结构,您只需将其递归 x 次即可获取您要查找的数据,其中 SUPERVISOR_ID = USER_ID.在我公司,是 16 级. 当尝试为每个用户终止分支时会出现此问题.例如,假设第 1 ..
发布时间:2022-01-08 17:17:28 其他开发