Data Structures and Algorithms in Java
Data Structures and Algorithms in Java
6th Edition
ISBN: 9781119278023
Author: Michael T. Goodrich; Roberto Tamassia; Michael H. Goldwasser
Publisher: Wiley Global Education US
bartleby

Concept explainers

Expert Solution & Answer
Book Icon
Chapter 5, Problem 22C

Explanation of Solution

Recursive method to determine the sum of two elements is equal to “n”:

Create the method FindPair() that accepts the input parameter as “a”, “low”, “high”, and “n” to determine the sum of two elements in an array “a” is equal to “n” by calling this method recursively.

Method definition:

//Define the FindPair() method

public static boolean FindPair(int a[], int low, int high, int n)

{

  //Check whether the "low" is equal to "high"

  if(low == high)

/*Return false, if there are no elements in array "a" that sum is equal to "n". */

  return false;

/*Otherwise, check whether the sum of "a[low]" and "a[high]" is less than "n". */

  else if((a[low]+a[high]) < n)

/*Call FindPair() method recursively by passing the parameters as "a", "low+1", "high" and "n" to sum the two elements is equal to "n". */

  return FindPair(a, low+1, high, n);

/*Otherwise, check whether the sum of "a[low]" and "a[high]" is greater than "n". */

  else if((a[low]+a[high]) > n)

/*Call FindPair() method recursively by passing the parameters as "a", "low", "high-1" and "n" to sum the two elements is equal to "n". */

  return FindPair(a, low, high-1, n);

  else

/*Return true, if there are elements in array "a" that sum is equal to "n". */

  return true;

}

Explanation:

In the above code,

  • In the FindPair() method,
    • It accepts the input parameter as “a”, “low”, “high”, and “n”.
    • Check whether the “low” is equal to “high”. If yes,
      • Return false, if there are no elements in array “a” that sum is equal to “n”.
    • Otherwise, check whether the sum of “a[low]” and “a[high]” is less than “n”. If yes,
      • Call FindPair() method recursively by passing the parameters as “a”, “low+1”, “high”,  and “n” to sum the two elements is equal to “n”...

Blurred answer
Students have asked these similar questions
Lab 07: Java Graphics (Bonus lab) In this lab, we'll be practicing what we learned about GUIs, and Mouse events. You will need to implement the following: ➤ A GUI with a drawing panel. We can click in this panel, and you will capture those clicks as a Point (see java.awt.Point) in a PointCollection class (you need to build this). о The points need to be represented by circles. Below the drawing panel, you will need 5 buttons: о An input button to register your mouse to the drawing panel. ○ о о A show button to paint the points in your collection on the drawing panel. A button to shift all the points to the left by 50 pixels. The x position of the points is not allowed to go below zero. Another button to shift all the points to the right 50 pixels. The x position of the points cannot go further than the You can implement this GUI in any way you choose. I suggest using the BorderLayout for a panel containing the buttons, and a GridLayout to hold the drawing panel and button panels.…
If a UDP datagram is sent from host A, port P to host B, port Q, but at host B there is no process listening to port Q, then B is to send back an ICMP Port Unreachable message to A. Like all ICMP messages, this is addressed to A as a whole, not to port P on A. (a)  Give an example of when an application might want to receive such ICMP messages. (b)  Find out what an application has to do, on the operating system of your choice, to receive such messages. (c)  Why might it not be a good idea to send such messages directly back to the originating port P on A?
Discuss how business intelligence and data visualization work together to help decision-makers and data users. Provide 2 specific use cases.
Knowledge Booster
Background pattern image
Computer Science
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
SEE MORE QUESTIONS
Recommended textbooks for you
Text book image
C++ Programming: From Problem Analysis to Program...
Computer Science
ISBN:9781337102087
Author:D. S. Malik
Publisher:Cengage Learning
Text book image
Programming Logic & Design Comprehensive
Computer Science
ISBN:9781337669405
Author:FARRELL
Publisher:Cengage
Text book image
C++ for Engineers and Scientists
Computer Science
ISBN:9781133187844
Author:Bronson, Gary J.
Publisher:Course Technology Ptr
Text book image
Systems Architecture
Computer Science
ISBN:9781305080195
Author:Stephen D. Burd
Publisher:Cengage Learning
Text book image
New Perspectives on HTML5, CSS3, and JavaScript
Computer Science
ISBN:9781305503922
Author:Patrick M. Carey
Publisher:Cengage Learning
Text book image
Programming with Microsoft Visual Basic 2017
Computer Science
ISBN:9781337102124
Author:Diane Zak
Publisher:Cengage Learning