【java – 递归和递归方法】教程文章相关的互联网学习教程文章

面试中常见的算法之Java中的递归【图】

1、方法定义中调用方法本身的现象2、递归注意实现 1) 要有出口,否则就是死递归 2) 次数不能太多,否则就内存溢出 3) 构造方法不能递归使用3、递归解决问题的思想和图解: 分解和合并【先分解后合并】 1. 常见的斐波那契数列 1,1,2,3,5,8,13,21,...特征: 从第三个数开始,每个数是前两个数的和。int count = 0;private int getFibo(int i) {if (i == 1 || i == 2) {count = count+1;System.out.p...

java – 适用于Android的Canny边缘检测器 – StackOverflow上的递归函数【代码】

我正在为Android增强现实应用程序.我正在实现Tom Gibara的canny edge detector class并用Bitmap替换了Android不支持的BufferedImage. 方法“follow”(在下面发布)导致StackOverflow错误.这是一个递归函数,但令我感到困惑的是,它会在崩溃之前大约10-15秒正常工作. 从Google看来,人们已经成功地用Java实现了这个类,但我想知道,无论出于何种原因,它在Android上都不起作用. Gibara的代码指定它仅用于单线程使用;这可能是问题的一部分吗...

java File类-递归遍历目录结构和树状展现【代码】

f.listFiles(); //返回目录下的所有子目录和子文件版本一:未加计数器分层次 static void f(File f) {System.out.println(f.getName());if(f.isDirectory()){File[] files=f.listFiles(); //如果是目录,返回目录下的所有子目录和子文件for(File fi:files){f(fi);}}} 版本二:加计数器分层次static void f(File f,int level) { //添加计数器for(int i=0;i<level;i++){System.out.print("-"); //打印“-”}System.out...

java – 对数组进行排序的递归函数

我在构建一个对整数数组进行排序的递归函数时遇到了麻烦.此时,我不知道任何排序算法,这只是我的第二个CS课程.我在这里看到了很多解决方案,但这些解决方案的问题是它们有循环或嵌套条件语句.在这个函数中,我不能使用循环或嵌套的if语句,只能使用单个if / else语句. 我知道你们不想简单地给出答案,因为它会带走学习经验,但如果我能指出正确的方向,我会非常感激.解决方法:查看Quicksort这是一个递归算法,它将完全满足您的需求.如果您需...

JAVA 遍历文件夹下的所有文件(递归调用和非递归调用)【代码】

JAVA 遍历文件夹下的所有文件(递归调用和非递归调用) 1.不使用递归的方法调用.public void traverseFolder1(String path) {int fileNum = 0, folderNum = 0;File file = new File(path);if (file.exists()) {LinkedList<File> list = new LinkedList<File>();File[] files = file.listFiles();for (File file2 : files) {if (file2.isDirectory()) {System.out.println("文件夹:" + file2.getAbsolutePath());list.add(file2);fold...

java 递归(Recursion)

现在要求输出一个给定目录中的全部文件的路径。 本程序肯定只能依靠递归的操作完成,因为在一个给定的路径下有可能还是文件夹,那么如果是文件夹的话则肯定要继续列出,重复判断。 递归:程序调用自身的编程技巧 递归就是在方法里调用自身; 在使用递归时,必须有一个明确的递归结束条件,称为递归出口。 练习:列出文件夹下所有文件(包含子文件夹内) package july7file; //利用递归遍历输出 import java.io.File; publi...

Java(JIT)可以内联递归方法吗?

问题就是这一切.我正在看看Can a recursive function be inline?,所以试图将它与Java相关联.解决方法:有点.尾递归方法可以很容易地转换为循环.否则,JITC可能会将几个呼叫内联为“展开”. 取决于月亮的阶段和一周中的某一天 – 许多不同的因素会影响JITC的决定.

java – Jackson:反序列化递归对象【代码】

我正在尝试将KendoUI网格发送的过滤器参数解析到我的Web服务,并且有一些问题说服Jackson解析这个JSON.据我所知,我可以控制剑道发送的参数格式,但我不知道如何将参数编组成更好的格式,以便它们现在保持不变. 我打算将这些参数转换为Oracle数据库的SQL查询. 示例JSON:{"filters":[{"field": "Name","operator": "contains","value": "John"},{"filters": [{"field": "Age","operator": "gt","value": 20},{"field": "Age","operator...

java – JMH microbenchmarking递归快速排序【代码】

您好我正在尝试微观基准测试各种排序算法,我遇到了jmh和基准测试快速排序的奇怪问题.也许我的实施有问题.如果有人能帮我看看问题在哪里,我会很感兴趣.首先,我使用ubuntu 14.04和jdk 7以及jmh 0.9.1.以下是我尝试做基准测试的方法:@OutputTimeUnit(TimeUnit.MILLISECONDS) @BenchmarkMode(Mode.AverageTime) @Warmup(iterations = 3, time = 1) @Measurement(iterations = 3, time = 1) @State(Scope.Thread) public class Sorting...

java – 如何以非破坏性的方式防止无限递归?【代码】

这是我在这里的第一个问题,所以如果我没有充分利用数据挖掘并重复问题,我会提前道歉. 所以我试图创建某种游戏,在某些时候你有一个像这样的矩阵:_ _ _ _ _ _ |_|_|h|h|h|h| |_|_|_|_|_|_| |_|#|#|#|_|_| |_|_|_|#|_|_| |_|h|_|_|_|_| |_|h|#|_|_|_| 我需要一种方法来检查是否存在仅由’h’构成的“元素”,如果找到了,则将所有字符从’h’更改为其他类似’d’的内容,例如它变为:_ _ _ _ _ _ |_|_|d|d|d|d| |_|_|_|_|_|_| |_|#|#|...

java – 使用递归进行回溯【代码】

我正在开发高级petri网编辑器/模拟器.起初,这里有一点词汇 圈=地方 矩形=过渡 整数到位=代币 转型条件=警卫 而且我坚持不懈地通过过渡的后卫. Guard是一个条件,如果要执行转换,则需要为true.我知道我应该以某种方式使用回溯,但我不知道在程序开始之前进入转换的位数,所以我不能用于循环,因为我不知道我需要多少个. 这是说明问题的图片 所以,我想从第一个位置获取第一个令牌,从第二个位置获取第一个令牌,然后尝试传递防护,如果通过,...

java – 有没有办法加速多次循环的递归?【代码】

我基本上尝试使用递归并创建了一个小程序,可以找到10个项目中的0-10个所有组合({1 apple,0 grapes},{2 apple,0 grape},{0 apple,1 grapes}等等.).import java.util.Arrays; import java.util.List;public class main {public static void main(String[] args) {System.out.println("Starting..");long startTime = System.currentTimeMillis();List<Integer> list_to_start = Arrays.asList(new Integer[] {0, 0, 0, 0, 0, 0, 0, 0...

java – 使函数递归中的逻辑【代码】

背景:想象一下,我有一个小机器人.我把这个机器人放在地图(图形)中的某个节点上.机器人可以调用giveMeMapCopy()方法来获取他所坐的整个地图的副本.我想给我的小机器人一个函数,通过该函数,他可以使用广度优先遍历来查找到Exit节点的最短路径.以下是此类地图的示例: 我在YouTube上观看了关于如何对图表进行广度优先遍历的视频,因此我很清楚需要做些什么.问题是,我发现很难让我的逻辑递归.这是我的代码:public class Robot {// fie...

java – 使用泛型递归合并Maps【代码】

我正在尝试构建一个合并两个地图内容的方法.我在这里看了一会儿,看不出这种通用的方法.如果可能的话,我想避免使用@SuppressWarnings(“未选中”)注释.我有一个嵌套的地图结构,其中键是字符串,值是更多东西的映射,此结构中的“叶子”节点始终是集合.因此,在大多数情况下,我有两个结构,如:Map<String,Map<String,Set<String>>>并且我想合并两个地图,以便最终得到两者的联合,并且这两个地图中的任何公共关键字在结果地图中表示,其值是...

使用Java 以递归方式列出具有给定名称的目录【代码】

参见英文答案 > Recursively finding only directories with FileUtils.listFiles 6个我想使用Apache IO Commons收集匹配给定名称的目录中的所有(子)目录.虽然我可以使用NameFileFilter结合FileUtils.listFiles来解决此文件的任务,但我找不到为文件夹执行此操作的解决方案. 我尝试了以下代码段:IOFileFilter fileFilter = new NameFileFilter(fileName); Collection<File> fileList = FileUti...

递归方法 - 相关标签