草庐IT

递归方程

全部标签

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

我有一个程序,我正在尝试为使用递归返回数组中所有整数之和的类编写。到目前为止,这是我的程序:publicclassSumOfArray{privateint[]a;privateintn;privateintresult;publicintsumOfArray(int[]a){this.a=a;n=a.length;if(n==0)//basecaseresult=0;elseresult=a[n]+sumOfArray(a[n-1]);returnresult;}//EndSumOfArraymethod}//EndSumOfArrayClass但我收到了三个相关的错误,我相信,但我

Java:如何递归获取所有子目录?

在调试越界递归函数之前:是否有获取子目录的命令?giveMeSubDirs(downToPath)?//WARNING:RECURSIONoutofboundortoomuchdatapublicHashSetgetAllDirs(Stringpath){HashSetcheckedDirs=newHashSet();HashSetallDirs=newHashSet();StringstartingPath=path;FilefileThing=newFile(path);FileObjectfileObject=newFileObject(fileThing);for(FileOb

java - 识别列表中的循环或递归

我想为节点的以下结构识别列表中的循环或递归。我怎样才能识别相同的?publicclassEntityNode{privateEntityNodenextNode;//Pointstothenextnode}例子,Node1->Node2->Node3->Node4->Node5->Node6->Node4在这里,你可以看到Node6指向了Node4,这里就出现了循环或者递归,我的代码会进入无穷大。那么如果我想找出具有最佳性能水平的此类场景怎么办? 最佳答案 这其实是我听过几次的面试题。虽然我从未尝试实现任何类型的循环检测,但大多数面

java - 如何提高递归方法的性能?

我正在学习数据结构和算法,这是一个我一直困扰的问题。我必须通过将值存储到内存中来提高递归调用的性能。但问题是未改进的版本似乎比这更快。有人能帮帮我吗?Syracuse数是由以下规则定义的正整数序列:syra(1)≡1syra(n)≡n+syra(n/2),如果nmod2==0syra(n)≡n+syra((n*3)+1),否则importjava.util.HashMap;importjava.util.Map;publicclassSyraLengthsEfficient{intcounter=0;publicintsyraLength(longn){if(nmap=newHashM

java - 在Java中递归转储聚合结构(Collection,Array)的内容

这是我关于Stackoverflow的第一个问题,如果您在我的第一篇文章中发现任何荒谬之处,请多多包涵。仅供引用,我已经阅读了SO常见问题解答,并且了解其各种政策。你看,我是一个大量使用PHP、Perl、Python、ROR等语言的人,最近我“上下文切换”到JavaEE。你看,我使用过的几种语言都有一个结构,使我能够在没有for/foreach/for..in循环的情况下递归地转储聚合结构的内容例如,a=AnycompositeDatastructurePHP有var_dump()andprint_r()Perl有Data::DumperROR有PrettyPrintPython有pp

java - 递归计算中偶发的StackOverflowError

在Eclipse中执行下面粘贴的代码时,大约有三分之一的时间我会遇到以下异常:Exceptioninthread"main"java.lang.StackOverflowErroratsrc.Adder.recursiveSumAllNumbersUpTo(Driver.java:33)atsrc.Adder.recursiveSumAllNumbersUpTo(Driver.java:37)...*(thereare1024linesinthisstack)*另外2次,它按预期吐出结果(每次运行之间的时间略有不同):Recursive:467946NonRecursive:61282

从二次方程中提取系数的Java程序

问题:从二次方程中分离系数的Java程序,例如如果输入字符串是:Stringstr1;str1="4x2-4x-42=0"所以我需要从给定的输入字符串中拆分系数并得到输出a=4b=-4c=-42我试过这个:Stringequation="ax2+bx-c=0";String[]parts=equation.split("\\+|-|=");for(inti=0;i但我得到的输出为23x2、4x和4。实际需要的输出是23,-4,4。 最佳答案 使用正则表达式,以下模式将起作用:([+-]?\d+)[Xx]2\s*([+-]?\d+)[

java - 在类 Test 中实例化类 Test 的成员是递归吗?

这是递归吗?publicclassTest{Testtest=newTest();publicstaticvoidmain(String[]args){newTest();}}关于instanceinitalizer的版本呢??publicclassTest{{Testtest=newTest();}publicstaticvoidmain(String[]args){newTest();}}我在问,因为我更新了myoldanswer,它展示了如何在没有递归的情况下生成StackOverflowError,但现在我不能100%确定上面的代码是否是递归的。 最

java - 使用递归绘制树

我正在尝试使用递归绘制一棵树。树需要看起来像这样:关于我应该如何做的简短总结:树干的长度为length,宽度为width树干分成两个Twig左边的是躯干长度的3/4,右边的是躯干长度的2/3左枝宽度为树干宽度的3/4,右枝宽度为树干宽度的1/2我们收到的参数是长度、最小长度、宽度、alpha(所有double)Twig生长直到Twig长于最小长度这是我解决问题的方法。我只想画树干,左分支和右分支。我设法做到了这一点,具有以下功能:publicvoiddrawTree(doublelength,doublemin_length,doublewidth,doublealpha){//Dra

java - 我需要帮助以递归方式比较目录中的文件以查找重复项

我正在开发一个程序,它将(希望)比较给定目录中的所有文件,识别重复项,将它们添加到列表中,然后向用户显示列表,以便他们可以在删除之前验证他们是否希望删除这些文件他们和我被严重困住了。到目前为止,我已经能够递归地列出所有文件,而且我一直在比较它们以找到重复项。我很快意识到要完成我想要的,我需要比较多个文件属性。并非所有文件都是文本文件,就互联网上的示例代码而言,比较文本主要是我发现的内容,我正在尝试了解有关二进制数据的更多信息,因为比较字节数组和文件名是我能做到的最好的跟上。具体来说,我问的是哪些属性最好进行比较,以便在查找重复项的准确性和能够处理合理大小的目录之间取得平衡?如果您不介意