(a)
To describe the
(a)

Explanation of Solution
The algorithm that sort the number by finding the largest number from the list is based on the dividing the list into some part to find the largest from the number and then divide the whole list into two parts that is, one part consists of largest number and other part consists rest of the numbers.
The algorithm uses the largest number and find the correct position of that number by comparing to all the number then it find the largest number from the rest of the number.
The algorithm placed that largest number to their correct position and allows this procedure until the last element is remaining in the array then combined all the number as it is placed by the algorithm and the merged array consists of sorted number.
The dividing of number takes the time of
Therefore, it takes total time of
(b)
To describe the algorithm that built a max-priority queue by calling EXTRACT-MAX and also gives the running time of the algorithm.
(b)

Explanation of Solution
The algorithm that uses max-priority queue and calling the EXTRACT-MAX is the Heap-sort. The algorithm is based on the creating the in-order tree by the numbers and calls the MAX-HEAPIFY at the nodes that are not leaf.
The algorithm arranged the tree in such a way that the root of the tree has largest number then the algorithm removes the root and stores it in the priority queue.
The algorithm again calls the EXTRACT-MAX on the remaining tree and arranged the tree such that root has largest number and remove the root and stored to the priority-queue where previous element is stored and continued the procedures again and again until the tree has only no elements.
The EXTRACT-MAX algorithm extracts the maximum or largest number from the given number by calling MAX-HEAPIFY.
The heapify of the algorithm takes the time of
Therefore, the running time of the algorithm is
(c)
To describe the algorithm that uses an order-statistic algorithm to find the largest, partition around that number and also give the running time of the algorithm.
(c)

Explanation of Solution
The algorithm considers all the numbers and stores the number into an array. It selects the largest by comparing the numbers and uses the finding function to find the largest number that is based on the comparisons of the numbers.
Then the algorithm partition the array into several parts using the partition algorithm. The partition algorithm recursively called itself and compared the element until it partitioned the array into single elements.
After the partition the algorithm merged the subparts in the sorted order of array that is i times. The merging of all the sorte3d parts gives the array of sorted number that is the output of the algorithm.
The finding and partition of the i -array takes the linear time of n . The sorting of the sub-parts of the array is based on the dividing and merging that takes the time of
Therefore, the algorithm takes total running time of
Want to see more full solutions like this?
Chapter 9 Solutions
Introduction To Algorithms, Third Edition (international Edition)
- I would like to get help to draw an object relationship diagram for a typical library system.arrow_forwardhttps://docs.google.com/document/d/1lk0DgaWfVezagyjAEskyPoe9Ciw3J2XUH_HQfnWSmwU/edit?usp=sharing using the link for the case study answer the below questionarrow_forwardFinally, your going to write several small javascript functions to practice with javascript core programming (basically just using javascript as a normal scripting language). For each section you can hardcode input values, and all output should go to console (we'll worry about the actual web page on Assignment 4). You can complete these all in one HTML file, or create one file for each part.arrow_forward
- Write a C program to calculate the checksum for a given line of an IntelHex file. To get full points, you must be able to explain to the instructor the individual parts of the IntelHex line (see below), as well as any part of your code. Definition:The checksum is calculated as the two's complement of the sum of the individual bytes from the beginning of the line to the checksum. Example:If you enter this string: :10010000214601360121470136007EFE09D21901XX You should get a checksum of 40 instead of XX. Demonstrate the completion of the task by calculating checksums, for example, for the following strings: :100010000C9445000C9445000C9445000C944500xx:100020000C9445000C9445000C9445000C944500xx:100030000C9445000C9445000C9445000C944500xx:100040000C9445000C9445000C9445000C944500xxarrow_forwardWrite a program to calculate the function sin(x) or cos(x) using a Taylor series expansion around the point 0. In other words, you will program the sine or cosine function yourself, without using any existing solution. You can enter the angles in degrees or radians. The program must work for any input, e.g. -4500° or +8649°. The function will have two arguments: float sinus(float radians, float epsilon); For your own implementation, use one of the following relations (you only need to program either sine or cosine, you don't need both): Tip 1: Of course, you cannot calculate the sum of an infinite series indefinitely. You can see (if not, look in the program) that the terms keep getting smaller, so there will definitely be a situation where adding another term will not change the result in any way (see problem 1.3 – machine epsilon). However, you can end the calculation even earlier – when the result changes by less than epsilon (a pre-specified, sufficiently small number, e.g.…arrow_forwardWrite a C program that finds and prints the machine epsilon for the float and double data types. Also print the values of __FLT_EPSILON__ and __DBL_EPSILON__ defined in float.h. Reminder – the phrase data type tells how the compiler “understands” the ones and zeros you are working with. This identifies whether you are working with integers, letters, real numbers, and so on. Another definition:Machine epsilon is the "distance" between the number 1 and its immediate right neighbor. We work in binary (decimal is in parentheses): 1 + 0,1 = 1,1 (1 + 1/2 = 1,5) 1 + 0,01 = 1,01 (1 + 1/4 = 1,25) 1 + 0,001 = 1,001 (1 + 1/8 = 1,125) then, due to the limited accuracy of the computer at a certain number of decimal places, a situation arises where 1 + 0.0…001 = 1 (instead of the correct 1.0…001). Then the previous number 0.0…01 is called the machine epsilon . It is obvious that its value may be different on different computers. However, the machine…arrow_forward
- Write a program that performs a rotational bit shift to the right for a positive integer. The user enters a number, the number of bits to shift (and, if you want, the direction of the shift, but right is enough). Example:The number 9 (in binary form 1001) when rotated to the right by 1 bit becomes 1100. Tip : A bit rotation (also known as a cyclic shift) is an operation in which the bits in a binary number are shifted a certain number of places to the right or left, with bits that “fall out” at one end being returned to the opposite end. So, start with a bit shift operation. Write a few examples on paper before programming.Tip : Use the unsigned int data type.You can get the number of bits of this data type as follows: int bit_count = sizeof (unsigned int ) * 8arrow_forwardI need help resolving the following case problemarrow_forwardClick Here for the Solution 27. Write a Program for Insertion Sort in Java. Time Complexity: O(N 2) Space Complexity: 0(1) Click Here for the Solutionarrow_forward
- Counting ten tennis ball going into a box From a conveyor belt I want to write a assignment about this topicarrow_forwardI need fixing my a matlab code to find the currents USING MARTIXS AND INVERSE to find the current % At this point We Enter the Resistor values and Voltage Source Values fprintf('Provide Resistance Values for the Resistors as Requested: \n'); fprintf('===============================================\n'); R1x = input('Enter the value for R1 in kohms: '); R2x = input('Enter the value for R2 in kohms: '); R3x = input('Enter the value for R3 in kohms: '); R4x = input('Enter the value for R4 in kohms: '); fprintf('Provide voltage values for as requested: \n'); fprintf('===============================================\n'); E1 = input('Enter the value of E1 in Volts: '); E2 = input('Enter the value of E2 in Volts: '); E3 = input('Enter the value of E3 in Volts: '); fprintf('===============================================\n'); % Scaling FACTOR multiplication of resistors by 1000 (1K) each R1 = 1000 * R1x; R2 = 1000 * R2x; R3 = 1000 * R3x; R4 = 1000 * R4x; fprintf('VALUES YOU HAVE ENTERED FOR YOUR…arrow_forwardSuppose that the two Rank methods below are added to the Skip List class on Blackboard. public int Rank(T item) Returns the rank of the given item. public T Rank(int i) Returns the item with the given rank i. Requirements 1. Describe in a separate Design Document what additional data is needed and how that data is used to support an expected time complexity of O(log n) for each of the Rank methods. Show as well that the methods Insert and Remove can efficiently maintain this data as items are inserted and removed. (7 marks) 2. Re-implement the methods Insert and Remove of the Skip List class to maintain the augmented data in expected O(log n) time. Using the Contains method, ensure that added items are distinct. (6 marks) 3. Implement the two Rank methods. (8 marks) 4. Test your new methods thoroughly. Include your test cases and results in a Test Document. (4 marks)arrow_forward
- C++ Programming: From Problem Analysis to Program...Computer ScienceISBN:9781337102087Author:D. S. MalikPublisher:Cengage LearningProgramming Logic & Design ComprehensiveComputer ScienceISBN:9781337669405Author:FARRELLPublisher:CengageOperations Research : Applications and AlgorithmsComputer ScienceISBN:9780534380588Author:Wayne L. WinstonPublisher:Brooks Cole
- Systems ArchitectureComputer ScienceISBN:9781305080195Author:Stephen D. BurdPublisher:Cengage LearningNew Perspectives on HTML5, CSS3, and JavaScriptComputer ScienceISBN:9781305503922Author:Patrick M. CareyPublisher:Cengage LearningEBK JAVA PROGRAMMINGComputer ScienceISBN:9781337671385Author:FARRELLPublisher:CENGAGE LEARNING - CONSIGNMENT




