Data Structures and Algorithms in Java
6th Edition
ISBN: 9781118771334
Author: Michael T. Goodrich
Publisher: WILEY
expand_more
expand_more
format_list_bulleted
Expert Solution & Answer
Chapter 5, Problem 9R
Explanation of Solution
Non-recursive method for power:
The non-recursive method for power is given below:
Create the method power() that accepts the input parameter as “num” and “pow” to calculate and return the power of number.
//Define the power() method
public static double power(double num, int pow)
{
//Declare and initialize the variables
int n = 0;
double ans = 1;
//Loop executes until the power value
while ((1 << n) <= pow)
//Increment the "n" by "1"
n++;
//Loop executes until the power value
for (int i= n-1; i >= 0; --i)
{
//Multiply "ans" with "ans"
ans *= ans;
//Check bitwise "i" and "pow" is greater than "0"
...Expert Solution & Answer
Want to see the full answer?
Check out a sample textbook solutionStudents have asked these similar questions
Implement a Java method with the identifier “SquareRoot” that takes 1parameter of type integer and returns a double value that represents the squareroot of the parameter. Note: you must implement the square root functionyourself by using the bisection algorithm as explained in Appendix 1 and youshould NOT use any java.lang.Math function.
Using java language
In voltTest[10] is an encapsulated array that contains 10 voltages. Display how many are ACTIVE (5V), SATURATED (greater than 5V) and CUTOFF (less than 5V). Use the UML diagram as a reference.
setValue(int,int,int) – accepts the value of voltActive, voltSaturated and voltCutoff as a parameter, which is the number of active, saturated and cutoff voltages.
displayResult() – displays the number of active, saturated and cutoff voltages.
Java problem
implement this specification. In addition, while Scanner input and System.out output will take place only in the main method, all solitaire game simulation and computation of the first player win probability estimate should take place in a method getAdvantage that takes an integer parameter for the number of games to simulate, and returns a double-precision floating-point first player win probability. The main method will read the desired number of simulations, call method getAdvantage with that number, and report the returned number in the specified format.
Specification:
First-Player Advantage
Pig is a folk jeopardy dice game with simple rules: Two players race to reach 100 points. Each turn, a player repeatedly rolls a die until either a 1 ("pig") is rolled or the player holds and scores the sum of the rolls (i.e. the turn total). At any time during a player's turn, the player is faced with two decisions:
roll - If the player rolls a
1: the player scores nothing…
Chapter 5 Solutions
Data Structures and Algorithms in Java
Ch. 5 - Prob. 1RCh. 5 - Prob. 2RCh. 5 - Prob. 3RCh. 5 - Prob. 4RCh. 5 - Prob. 5RCh. 5 - Draw the recursion trace for the execution of...Ch. 5 - Prob. 7RCh. 5 - Describe a recursive algorithm for converting a...Ch. 5 - Prob. 9RCh. 5 - Prob. 10R
Ch. 5 - Prob. 11CCh. 5 - Prob. 12CCh. 5 - Give a recursive algorithm to compute the product...Ch. 5 - In Section 5.2 we prove by induction that the...Ch. 5 - Write a recursive method that will output all the...Ch. 5 - In the Towers of Hanoi puzzle, we are given a...Ch. 5 - Write a short recursive Java method that takes a...Ch. 5 - Write a short recursive Java method that...Ch. 5 - Use recursion to write a Java method for...Ch. 5 - Write a short recursive Java method that...Ch. 5 - Prob. 21CCh. 5 - Prob. 22CCh. 5 - Prob. 23CCh. 5 - Isabel has an interesting way of summing up the...Ch. 5 - Prob. 25CCh. 5 - Prob. 26CCh. 5 - Prob. 27PCh. 5 - Write a program for solving summation puzzles by...Ch. 5 - Prob. 29PCh. 5 - Write a program that can solve instances of the...
Knowledge Booster
Similar questions
- Implement a Java method with the identifier “CubeRoot” that takes 1 parameterof type integer and returns a double value that represents the cube root of theparameter. Note: you must implement the cube root function yourself by usingthe bisection algorithm as explained in Appendix 1 and you should NOT use anyjava.lang.Math function.arrow_forwardFor this problem, you can use all classes in the java.util package. As a genius IT/SE student, you are asked by the Ministry of Health to help them analyze the Covid sequences. In particular, given 2 Covid variants, your task is to find the longest common subsequence between them. Each Covid variant has 2 properties: code (String) and sequence (String). Both properties contain only upper case letters 'A' to 'Z'. The length of the sequence is up to 100 characters. Subsequence definition: given a string S consists of the letters s1, s2, sn in that order. If you delete zero, one, or more letters from S without changing the letters' order, the remaining string S2 is called a subsequence of S. For example: given the string "HELLO", the following strings are some of its subsequences: "HELLO", "HLO", "O", "HO", "'" (empty string). The following strings are not its subsequences: "OL", "HELLOO", "LEH". Create a type CovidVariant that contains 2 properties: code (String), and sequence (String).…arrow_forwardWrite a method that returns the index of the smallest element in an array of doubles. The method should receive an array for formal parameters. (in Java)arrow_forward
- Make a recursive method for factoring an integer n. First, find a factor f, then recursively factor n / f. This assignment needs a resource class and a driver class; these two classes will need to be in two separate files. The resource class will contain all of the methods and the driver class only needs to call the methods. The driver class needs to have only 5 lines of code. The code needs to be written in Java.arrow_forwardIn writing a general-purpose sort method in Java, the sort method needs to compareobjects. There are two ways to give the sort method the code to compare objects,implementing the interfaces Comparable and Comparator respectively. Extend Article class toimplement Comparable interface so that the default sorting of the Articles is by its volumearrow_forwardWrite a C++ program that defines an array of integers, add a method, removeDuplicate(), that removes duplicates from the array. When a duplicate element is found, the discovered element must be replaced by zero. Display the elements of the array before and after duplicates are removed. For example, if the elements of the array are: 2 711461392 After the duplicates are removed, the elements of the array are: 2710460390 To implement the code to remove the duplicate integers, use the code I provide and insert your code in the removeDuplicate() method to perform the task. After you complete the code, what is the Big(0) of your removeDuplicate( ) method? Hinclude using namespace stdj int a (] = (2, 7, 1, 1, 4, 6, 1, 3, 9, 2}3 int size = sizeof(a)/sizeof(a[@]); void displayarray() { for(int i = 0j i e sizej i++) { cout « a[i] « * *i cout « endl; void removeDuplicate() { Write your C+ code to remove the duplicate integers in this method. int main() { displayArray(); removeDuplicate();…arrow_forward
- Implement two different versions of quicksort in a high level programming language. The first version will use the first element of the array as the pivot. The second version will use the median of the first element, middle element, and last element of the array as the pivot. For each version, compare the performance on random arrays of data of sizes 10n for n = 2, 3, and 4. Create three graphs (one for the random data, one for the increasing data, and one for the decreasing data) to illustrate your results. Discuss these results.arrow_forwardCan I get an example of using the invert colors function on python? the code starting with def invert_colors(image_matrix):arrow_forwardDesign and implement a program that implements Euclid’s algorithm for finding the greatest common divisor of two positive integers. The greatest common divisor is the largest integer that divides both values without producing a remainder. In a class called DivisorCalc, define a static method called gcd that accepts two integers, num1 and num2. Create a driver to test your implementation. The recursive algorithm is defined as follows:gcd (num1, num2) is num2 if num2 <= num1 and num2evenly divides num1gcd (num1, num2) is gcd(num2, num1) if num1 < num2gcd (num1, num2) is gcd(num2, num1%num2) otherwisearrow_forward
- Implement 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_forwardIn Java!!!. Design and implement a recursive version of a binary search. For the recursive version, instead of using a loop to repeatedly loop for the target value, allow each call to a recursive method check one value. If the value is not the target, refine the search space and call the method again. The indexes that define the range of viable candidates can be passed to the method. The base case is either finding the target value or running out of data to search. Design the program to work for on an array of sorted String objects.arrow_forwardWrite 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_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