Starting Out with Java: From Control Structures through Data Structures (4th Edition) (What's New in Computer Science)
4th Edition
ISBN: 9780134787961
Author: Tony Gaddis, Godfrey Muganda
Publisher: PEARSON
expand_more
expand_more
format_list_bulleted
Concept explainers
Textbook Question
Chapter 15, Problem 5SA
Which repetition approach is less efficient: a loop or a recursive method? Why?
Expert Solution & Answer
Want to see the full answer?
Check out a sample textbook solutionStudents have asked these similar questions
Mention any two differences between recursion and iteration.
Explain the meaning of the recursion with a simple example
Ex. 01 : Recursion
About
So far, we have learned that we can perform repetitive tasks using loops. However, another way is by creating methods that call themselves. This programming technique is called recursion
and, a method that calls itself within it's own body is called a recursive method. One use of recursion is to perform repetitive tasks instead of using loops, since some problems seem to be
solved more naturally with recursion than with loops.
To solve a problem using recursion, it is broken down into sub-problems. Each sub-problem is similar to the original problem, but smaller in size. You can apply the same approach to each
sub-problem to solve it recursively.
All recursive methods use conditional tests to either
1. stop or
2. continue the recursion.
Each recursive method has the following characteristics:
1. end/terminating case: One or more end cases to stop the recursion.
2. recursive case: reduces the problem in to smaller sub-problems, until it reaches (becomes) the end…
Chapter 15 Solutions
Starting Out with Java: From Control Structures through Data Structures (4th Edition) (What's New in Computer Science)
Ch. 15.2 - It is said that a recursive algorithm has more...Ch. 15.2 - Prob. 15.2CPCh. 15.2 - What is a recursive case?Ch. 15.2 - What causes a recursive algorithm to stop calling...Ch. 15.2 - What is direct recursion? What is indirect...Ch. 15 - Prob. 1MCCh. 15 - This is the part of a problem that can be solved...Ch. 15 - This is the part of a problem that is solved with...Ch. 15 - This is when a method explicitly calls itself. a....Ch. 15 - Prob. 5MC
Ch. 15 - Prob. 6MCCh. 15 - True or False: An iterative algorithm will usually...Ch. 15 - True or False: Some problems can be solved through...Ch. 15 - True or False: It is not necessary to have a base...Ch. 15 - True or False: In the base case, a recursive...Ch. 15 - Find the error in the following program: public...Ch. 15 - Prob. 1AWCh. 15 - Prob. 2AWCh. 15 - What will the following program display? public...Ch. 15 - Prob. 4AWCh. 15 - What will the following program display? public...Ch. 15 - Convert the following iterative method to one that...Ch. 15 - Write an iterative version (using a loop instead...Ch. 15 - What is the difference between an iterative...Ch. 15 - What is a recursive algorithms base case? What is...Ch. 15 - What is the base case of each of the recursive...Ch. 15 - What type of recursive method do you think would...Ch. 15 - Which repetition approach is less efficient: a...Ch. 15 - When recursion is used to solve a problem, why...Ch. 15 - How is a problem usually reduced with a recursive...Ch. 15 - Prob. 1PCCh. 15 - isMember Method Write a recursive boolean method...Ch. 15 - String Reverser Write a recursive method that...Ch. 15 - maxElement Method Write a method named maxElement,...Ch. 15 - Palindrome Detector A palindrome is any word,...Ch. 15 - Character Counter Write a method that uses...Ch. 15 - Recursive Power Method Write a method that uses...Ch. 15 - Sum of Numbers Write a method that accepts an...Ch. 15 - Ackermarms Function Ackermanns function is a...Ch. 15 - Recursive Population Class In Programming...
Additional Engineering Textbook Solutions
Find more solutions based on key concepts
Suppose a two-lane road converges to one lane to pass through a tunnel. To coordinate the use of the tunnel, th...
Computer Science: An Overview (13th Edition) (What's New in Computer Science)
You use this class to create a menu bar. a. MenuItem b. MenuBar c. Menu d. Bar
Starting Out with Java: From Control Structures through Objects (7th Edition) (What's New in Computer Science)
Sentence Filter A program that processes an input file and produces an output file is called a filter. Write a ...
Starting Out with C++: Early Objects (9th Edition)
________ binding is when the compiler binds member function calls at compile time.
Starting Out with C++ from Control Structures to Objects (9th Edition)
This optional Google account security feature sends you a message with a code that you must enter, in addition ...
SURVEY OF OPERATING SYSTEMS
What is a ToolTip?
Starting Out With Visual Basic (8th Edition)
Knowledge Booster
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.Similar questions
- One-friend recursion vs iteration. 1. Your objective is to receive the tuple a1, a2,..., a and return the tuple an, an1,..., a1 that has been inverted. You will only take an element off of one end or put an element back on one end because you are being lazy. But you have friends in recursion who can assist you.Please provide the recursive code as well as a paragraph with the friend's description of the algorithm.2. Now imagine that you lack friends but have a stack. Quickly design an iterative programme to address this issue. Include loop invariants and other crucial stages that are necessary to describe an iterative method.3. Trace both of these scripts separately. On a computer, step by step compare and contrast their calculations.arrow_forwardCompare and contrast between iterative and recursive solutions. When would you preferiteration over recursion and vice-versa? Justify your answer by giving different examples than the ones which are provided in the lecture slides java codearrow_forwarddo you think that all recursive functions can be rewritten as loops? How about rewriting loops as a recursive function? Briefly explain your answer.arrow_forward
- Recursion is the best and the fastest way to solve any problem.True or Falsearrow_forwardDistinguish between Recursion and Iteration. Give practical examples to illustrate your answer.arrow_forwardTell us about a few Recursion drawbacks and solutions to some of these issues. Give an illustration of what you mean.arrow_forward
- Suppose you are given two integer values x and y. Construct a recursive algo-rithm that uses any combination of the following operations: addition, subtraction, comparison. Calculate the remainder of x divided by y. Specify a set ofexample values for x and y which will result in at least 3 or more recursive calls,and draw the recursion trace diagram for your example.arrow_forwardA recursive sequence is defined by - d k = 6 d k − 1 + 3 , for all integers k ≥ 2 and d1 = 2 Use iteration to guess an explicit formula for the above sequence.arrow_forwardHow does the concept of recursion work in computer programming?arrow_forward
- Investigate both the iterative and the recursive methods of problem resolution, and then compare and contrast the results of your research. When would you use iteration when recursion would be more appropriate, and when would you use recursion when iteration would be more appropriate? Your answer should be justified by giving examples that are different from those that are shown on the slides of the presentation.arrow_forwardWhat does an endless recursive function do to your program's memory? Explain why that happens?arrow_forwardPeople always say that recursive programs take longer than iterative programs. a.) Explain what it means to use iteration instead of recursion. b.) Why are recursive programs slower than iterative programs? Give some detail.arrow_forward
arrow_back_ios
SEE MORE QUESTIONS
arrow_forward_ios
Recommended textbooks for you
- Database System ConceptsComputer ScienceISBN:9780078022159Author:Abraham Silberschatz Professor, Henry F. Korth, S. SudarshanPublisher:McGraw-Hill EducationStarting Out with Python (4th Edition)Computer ScienceISBN:9780134444321Author:Tony GaddisPublisher:PEARSONDigital Fundamentals (11th Edition)Computer ScienceISBN:9780132737968Author:Thomas L. FloydPublisher:PEARSON
- C How to Program (8th Edition)Computer ScienceISBN:9780133976892Author:Paul J. Deitel, Harvey DeitelPublisher:PEARSONDatabase Systems: Design, Implementation, & Manag...Computer ScienceISBN:9781337627900Author:Carlos Coronel, Steven MorrisPublisher:Cengage LearningProgrammable Logic ControllersComputer ScienceISBN:9780073373843Author:Frank D. PetruzellaPublisher:McGraw-Hill Education
Database System Concepts
Computer Science
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:McGraw-Hill Education
Starting Out with Python (4th Edition)
Computer Science
ISBN:9780134444321
Author:Tony Gaddis
Publisher:PEARSON
Digital Fundamentals (11th Edition)
Computer Science
ISBN:9780132737968
Author:Thomas L. Floyd
Publisher:PEARSON
C How to Program (8th Edition)
Computer Science
ISBN:9780133976892
Author:Paul J. Deitel, Harvey Deitel
Publisher:PEARSON
Database Systems: Design, Implementation, & Manag...
Computer Science
ISBN:9781337627900
Author:Carlos Coronel, Steven Morris
Publisher:Cengage Learning
Programmable Logic Controllers
Computer Science
ISBN:9780073373843
Author:Frank D. Petruzella
Publisher:McGraw-Hill Education
Computational Software for Intelligent System Design; Author: Cadence Design Systems;https://www.youtube.com/watch?v=dLXZ6bM--j0;License: Standard Youtube License