recursive vs iterative solutions one of the most succinct properties of modern programming languages like ++ #and java (as well as many othersis that these languages allow you to define methods that reference themselvessuch methods are said to be recursive one of the biggest advantages recursive methods bring to the table is that they usually result in more readableand compact solutions to problems recursive method then is one that is defined in terms of itself generally recursive algorithms has two main properties one or more base casesand recursive case for now we will briefly cover these two aspects of recursive algorithms with each recursive call we should be making progress to our base case otherwise we are going to run into trouble the trouble we speak of manifests itself typically as stack overflowwe will describe why later now that we have briefly described what recursive algorithm is and why you might want to use such an approach for your algorithms we will now talk about iterative solutions an iterative solution uses no recursion whatsoever an iterative solution relies only on the use of loops ( forwhiledo-whileetcthe down side to iterative algorithms is that they tend not to be as clear as to their recursive counterparts with respect to their operation the major advantage of iterative solutions is speed most production software you will find uses little or no recursive algorithms whatsoever the latter property can sometimes be companies prerequisite to checking in codee upon checking in static analysis tool may verify that the code the developer is checking in contains no recursive algorithms normally it is systems level code that has this zero tolerance policy for recursive algorithms using recursion should always be reserved for fast algorithmsyou should avoid it for the following algorithm run time deficiencies ( (