![EBK BUILDING JAVA PROGRAMS](https://www.bartleby.com/isbn_cover_images/9780134323718/9780134323718_largeCoverImage.jpg)
EBK BUILDING JAVA PROGRAMS
4th Edition
ISBN: 9780134323718
Author: Stepp
Publisher: PEARSON CUSTOM PUB.(CONSIGNMENT)
expand_more
expand_more
format_list_bulleted
Expert Solution & Answer
Chapter 12, Problem 21E
Explanation of Solution
Method definition:
//method definition
public static int maxSum(List<Integer> numbers, int limit)
{
//validate the limit
if (limit <= 0 || numbers.isEmpty())
{
//return 0
return 0;
}
else
{
//process the first value
int first = numbers.get(0);
//remove the element
numbers.remove(0);
//declare the variable
int max;
//validate the limit with the first value
if (first > limit)
{
//assign the maximum element
max = maxSum(numbers, limit);
}
;&#x...
Expert Solution & Answer
![Check Mark](/static/check-mark.png)
Want to see the full answer?
Check out a sample textbook solution![Blurred answer](/static/blurred-answer.jpg)
Students have asked these similar questions
Write a recursive function that finds the minimum value in an ArrayList.
Your function signature should be
public static int findMinimum(ArrayList<Integer>)
One way to think of finding a minimum recursively is to think “the minimum number is either the last element in the ArrayList, or the minimum value in the rest of the ArrayList”.
For example, if you have the ArrayList
[1, 3, 2, 567, 23, 45, 9],
the minimum value in this ArrayList is either 9 or the minimum value in [1, 3, 2, 567, 23, 45]
================================================
import java.util.*;
public class RecursiveMin{public static void main(String[] args){Scanner input = new Scanner(System.in);ArrayList<Integer> numbers = new ArrayList<Integer>();while (true){System.out.println("Please enter numbers. Enter -1 to quit: ");int number = input.nextInt();if (number == -1){break;}else {numbers.add(number);}}
int minimum = findMinimum(numbers);System.out.println("Minimum: " + minimum);}public static int…
Write a recursive method that gets two parameters as input: an array of integers called nums and an integer called index. The purpose of this method is to return the following: nums[index] * nums[index+ 1] * nums[index+ 2] * .. nums[nums.length-1]. Do not use loops. (java code)
Write a recursive method that gets three parameters as input: an array of integers called nums, an integer called index,and an integer called The purpose of this method is to return true if value is stored in the array starting at nums[index]. That is, you have to check if value is equal to nums[index] or nums[index +1] or nums[index +2 ] …. nums[nums.length -1]. Do not use loops.(java code)
Chapter 12 Solutions
EBK BUILDING JAVA PROGRAMS
Ch. 12.1 -
What is recursion? How does a recursive method...Ch. 12.1 - Prob. 2SCPCh. 12.1 - Prob. 3SCPCh. 12.1 - Prob. 4SCPCh. 12.1 - Prob. 5SCPCh. 12.1 - Prob. 6SCPCh. 12.1 - Prob. 7SCPCh. 12.2 - Prob. 8SCPCh. 12.2 -
What would be the effect if the code for the...Ch. 12.2 -
What would be the effect if the code for the...
Ch. 12.3 - Prob. 11SCPCh. 12.3 - Prob. 12SCPCh. 12.3 - Prob. 13SCPCh. 12.3 - Prob. 14SCPCh. 12.3 - Prob. 15SCPCh. 12.3 - Prob. 16SCPCh. 12.3 - Prob. 17SCPCh. 12.3 - Prob. 18SCPCh. 12.3 - Prob. 19SCPCh. 12.4 - Prob. 20SCPCh. 12.4 - Prob. 21SCPCh. 12.5 - Why is recursion an effective way to implement a...Ch. 12.5 - Prob. 23SCPCh. 12.5 - Prob. 24SCPCh. 12.5 - Prob. 25SCPCh. 12.5 - Prob. 26SCPCh. 12.5 - Prob. 27SCPCh. 12.5 - Prob. 28SCPCh. 12 - Prob. 1ECh. 12 - Write a method called writeNums that takes an...Ch. 12 - Write a method called writeSequence that accepts...Ch. 12 - Write a recursive method called doubleDigits that...Ch. 12 - Prob. 5ECh. 12 - Prob. 6ECh. 12 - Prob. 7ECh. 12 - Write a recursive method called multiplyEvens that...Ch. 12 - Prob. 9ECh. 12 - Prob. 10ECh. 12 - Prob. 11ECh. 12 - Write a recursive method called isReverse that...Ch. 12 - Prob. 13ECh. 12 - Prob. 14ECh. 12 - Prob. 15ECh. 12 - Prob. 16ECh. 12 - Prob. 17ECh. 12 - Prob. 18ECh. 12 - Prob. 19ECh. 12 - Prob. 20ECh. 12 - Prob. 21ECh. 12 - Prob. 22E
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
- Write a method subsets that uses recursive backtracking to find every possible sub-list of a given list. A sub-list of a list L contains 0 or more of L's elements. Your method should accept a List of strings as its parameter and print every sub-list that could be created from elements of that list, one per line. For example, suppose a variable called list stores the following elements: [Janet, Robert, Morgan, Char]The call of subsets(list); would produce output such as the following: [Janet, Robert, Morgan, Char][Janet, Robert, Morgan][Janet, Robert, Char][Janet, Robert][Janet, Morgan, Char][Janet, Morgan][Janet, Char][Janet][Robert, Morgan, Char][Robert, Morgan][Robert, Char][Robert][Morgan, Char][Morgan][Char][][3:07 AM]The order in which you show the sub-lists does not matter, but the order of the elements of each sub-list DOES matter (Note: this requirement is a limitation of Practice-It testing code. The textbook version of the problem would accept an answer with the elements in…arrow_forwardGiven a list of integers, you want to know whether it is possible to divide the integers into two sets, so that the sum of one set is odd, and the sum of the other set is a multiple of 10. Every integer must be in one set or the other. You can write a recursive helper method that takes any number of arguments and then call it inside the method, but you cannot use any loops. Test cases: oddAndTen([5, 5, 3]) true oddAndTen ([5, 5, 4]) oddAndTen ([5, 5, 4, 1]) false truearrow_forwardWrite a recursive method that displays all permutations of a given array ofintegers. Here is a sample run: Enter the array size : 3[1, 2, 3][1, 3, 2][2, 1, 3][2, 3, 1][3, 1, 2][3, 2, 1]arrow_forward
- JAVA: Write a recursive method named threeSum that accepts a list of integers and prints all combinations of three integers in the list that sum to 0. For example, if given the list [-1, 0, 1, 2, -1, -4], print the following lines of output: [-1, 0, 1] [-1, 2, -1] [0, 1, -1] You may print the lines of output in any order. The elements in each three-element sublist should appear in the same relative order that they appeared in the original list. Do not print duplicate lists; if the same exact sublist can be made in multiple ways, print it only once. If there are no combinations of three elements that sum to 0, print no output. The list passed to your method must be back to its original state at the end of the call. Either do not modify it, or if you modify it, fully undo your modifications before the method returns. Constraints: Do not declare any global variables. You can use any data structures you like, and your code can contain loops, but the overall algorithm must be recursive and…arrow_forwardThe following recursive method get Number Equal searches the array x of 'n integers for occurrences of the integer val. It returns the number of integers in x that are equal to val. For example, if x contains the 9 integers 1, 2, 4, 4, 5, 6, 7, 8, and 9, then getNumberEqual(x, 9, 4) returns the value 2 because 4 occurs twice in x. public static int getNumberEqual(int x[], int n, int val) { if (n< 0) ( return 0; } else { if (x[n-1) == val) { return getNumberEqual(x, n-1, val) +1; } else { return getNumber Equal(x, n-1, val); } // end if ) // end if } // end get Number Equal Demonstrate that this method is recursive by listing the criteria of a recursive solution and stating how the method meets each criterion.arrow_forwardWrite a RECURSIVE method called “sequence” that takes a single int parameter (n) and returns the int value of the nth element of the sequence S = 2, 4, 6, 12, 22, 40, 74, 136, 250, 460, … Where S is defined by the recursive formula: For n >= 0S(0) = 2; // Base case 1S(1) = 4; // Base case 2S(2) = 6; // Base case 3S(N) = 2 * ( S(N-1)/2 + S(N-2)/2 + S(N-3)/2)arrow_forward
- Write a recursive method that gets three parameters as input: an array of integers called nums, an integer called index, and an integer called value. The purpose of this method is to count how many times value appears in the array starting at nums[index]. Do not use loops. (Java code)arrow_forwardWrite a recursive method called doubleDigits that accepts an integer n as a parameter and returns the integer obtained by replacing every digit of n with two of that digit. For example, doubleDigits(348) should return 334488. The call doubleDigits(0) should return 0. Calling doubleDigits on a negative number should return the negation of calling doubleDigits on the corresponding positive number; for example, doubleDigits(–789) should return –778899.arrow_forwardImplement a recursive function void deleteMax() on the IntList class (provided). The function will delete from the IntList the IntNode containing the largest value. If there are multiple nodes containing this largest value, only delete the 1st one. Be careful not to cause any memory leaks or dangling pointers. You may NOT use any kind of loop (must use recursion). You may NOT use global or static variables. You may NOT use any standard library functions. Ex: list: 5->7->1->16->4->16->3 list.deleteMax(); list: 5->7->1->4->16->3 IntList.h #ifndef __INTLIST_H__#define __INTLIST_H__ #include <ostream> using namespace std; struct IntNode {int value;IntNode *next;IntNode(int value) : value(value), next(nullptr) {}}; class IntList { private:IntNode *head; public: /* Initializes an empty list.*/IntList() : head(nullptr) {} /* Inserts a data value to the front of the list.*/void push_front(int val) {if (!head) {head = new IntNode(val);} else {IntNode…arrow_forward
- Write a recursive method to print all the permutations of astring. For example, for the string abc, the permutation isabcacbbacbcacabcba public static void displayPermutation(String s)public static void displayPermutation(String s1, String s2)The first method simply invokes displayPermutation(" ", s). The secondmethod uses a loop to move a character from s2 to s1 and recursively invokesit with new s1 and s2. The base case is that s2 is empty and prints s1 to theconsole.Write a test program that prompts the user to enter a string and displays all itspermutations.arrow_forwardWrite a method printSquares that uses recursive backtracking to find all ways to express an integer as a sum of squares of unique positive integers. For example, the call of printSquares(200); should produce the following output:1^2 + 2^2 + 3^2 + 4^2 + 5^2 + 8^2 + 9^21^2 + 2^2 + 3^2 + 4^2 + 7^2 + 11^21^2 + 2^2 + 5^2 + 7^2 + 11^21^2 + 3^2 + 4^2 + 5^2 + 6^2 + 7^2 + 8^21^2 + 3^2 + 4^2 + 5^2 + 7^2 + 10^22^2 + 4^2 + 6^2 + 12^22^2 + 14^23^2 + 5^2 + 6^2 + 7^2 + 9^26^2 + 8^2 + 10^2Some numbers (such as 128 or 0) cannot be represented as a sum of squares, in which case your method should produce no output. Keep in mind that the sum has to be formed with unique integers. Otherwise you could always find a solution by adding 1^2 together until you got to whatever number you are working with.As with any backtracking problem, this one amounts to a set of choices, one for each integer whose square might or might not be part of your sum. In many of our backtracking problems we store the choices in…arrow_forwardWrite a recursive method called add(int n). This method adds the integers from 0 to some value n. For example, the call to add(4) would return 10 (4+3+2+1=10).arrow_forward
arrow_back_ios
SEE MORE QUESTIONS
arrow_forward_ios
Recommended textbooks for you
- C++ Programming: From Problem Analysis to Program...Computer ScienceISBN:9781337102087Author:D. S. MalikPublisher:Cengage Learning
![Text book image](https://www.bartleby.com/isbn_cover_images/9781337102087/9781337102087_smallCoverImage.gif)
C++ Programming: From Problem Analysis to Program...
Computer Science
ISBN:9781337102087
Author:D. S. Malik
Publisher:Cengage Learning
Introduction to Big O Notation and Time Complexity (Data Structures & Algorithms #7); Author: CS Dojo;https://www.youtube.com/watch?v=D6xkbGLQesk;License: Standard YouTube License, CC-BY