tag:blogger.com,1999:blog-8712770457197348465.post8679646319323212714..comments2024-03-29T03:17:04.645-07:00Comments on Javarevisited: [Solved] How to Reverse an ArrayList in Java using Recursion? Example Tutorialjavin paulhttp://www.blogger.com/profile/15028902221295732276noreply@blogger.comBlogger3125tag:blogger.com,1999:blog-8712770457197348465.post-56613290305309169692016-04-19T10:30:52.295-07:002016-04-19T10:30:52.295-07:00Save object creation in recursive method like this...Save object creation in recursive method like this <br /><br /><br /> public static void reverse(List list, List rlist) {<br /><br /> if (list.size() == 0) {<br /><br /> return;<br /> }else{<br /> rlist.add(list.get(list.size() - 1));<br /> reverse(list.subList(0, list.size()-1), rlist);<br /> }<br /><br /> <br /> <br /><br /> }Neelesh Salpehttps://www.blogger.com/profile/18073448701528545431noreply@blogger.comtag:blogger.com,1999:blog-8712770457197348465.post-57831900502731177252016-03-19T21:28:31.870-07:002016-03-19T21:28:31.870-07:00@Yahor, that would be great. Given Scala already h...@Yahor, that would be great. Given Scala already has tail call optimization, I don't see it's too far.javin paulhttps://www.blogger.com/profile/15028902221295732276noreply@blogger.comtag:blogger.com,1999:blog-8712770457197348465.post-70097220233076608972016-03-19T21:14:37.120-07:002016-03-19T21:14:37.120-07:00I believe tail-call optimization will be enabled s...I believe tail-call optimization will be enabled some day in Java. Then recursive implementation seems to be efficient and safe at the same time if implemented with tail calls. Here is how I see tail-recursive variant of reverse method:<br /><br />static List reverse(List list) {<br /> return reverseRecursively(list, new ArrayList(list.size()));<br />}<br /><br />private static List Anonymoushttps://www.blogger.com/profile/16302408664410865728noreply@blogger.com