Develop a simple prototype version of the given algorithm

Assignment Help Data Structure & Algorithms
Reference no: EM131132008

Computer Programs

You currently work in an algorithm development group for a large multimedia, mobile device corporation. Your group has been tasked with creating an app that will play an audio file backwards (from end to beginning rather than the standard beginning to end). Because this app is likely to be used on a mobile device, your group figures that this algorithm should use as little memory and space as possible. Your group has therefore decided to construct this reversal order algorithm such that it is an "in-place" algorithm. This simply means that the audio file will be loaded to memory and reversed using the same memory locations (because you must use memory sparingly).

Assignment

Part 1: Before attempting this implementation, you choose to develop a simple prototype version of this algorithm in C++. Specifically, you will build an in-place, order reversal algorithm. This algorithm will take as an input an array of ints and will reverse the order of the elements in the array, in place (essentially using only the memory in the array). For example, if the array contains five elements [1,2,3,4,5], the output of the algorithm will be [5,4,3,2,1]. Comment your program.

Part 2: Using this prototype, you will analyze the time complexity and space complexity of your algorithm in the worst case. Specifically, for time complexity, count the number of steps for each line of code, and write down the total lines executed as a mathematical expression where n is the size of the input array. For space complexity, write an expression for the number of memory locations and components that are required for algorithm in the worst case. (Assume that each int is one location.)

Part 3: Program a method or class that will track the true runtime of your algorithm. Find the true runtime of your algorithm using arrays of varying sizes (e.g., n = 500, n = 1,500, and n= 2,500) using your new tool. Plot, on a Cartesian plane, the runtime of your algorithm as a function of the size of the input array, n.

Reference no: EM131132008

Questions Cloud

Compare and contrast holism versus reductionism : The paper will be five pages: (a) Describe Holism - 2 pages, (b) Describe Reductionism - 2 pages, (c) Compare and contrast Holism versus Reductionism - 1 page.
Obtain an unbiased estimator : We first assume σi2 = σ2 for all i. Obtain the OLS estimator of β, which we denote β^, and find E(β^) and var(β^). Using your answer in part (a), obtain an unbiased estimator of var(β^)
Discuss the difference between male and female serial killer : Serial killers are some of the most studied criminals. - Discuss the difference between male and female serial killers.
Inversion count for an array : Inversion Count for an array indicates - how far the array is from being sorted. If array is already sorted then inversion count is 0.
Develop a simple prototype version of the given algorithm : Before attempting this implementation, you choose to develop a simple prototype version of this algorithm in C++. Specifically, you will build an in-place, order reversal algorithm.
Journalize the issuance of the preferred stock : Acker Inc. issues 5,000 shares of $100 par value preferred stock for cash at $130 per share. Journalize the issuance of the preferred stock.
Calculate the minimum mean-square error : Find the estimator g(Y) of X, in terms of F, that minimizes the mean square error MSB: = E[(X - g{Y))2],
What steps might a board of directors take to ensure : Information asymmetry lies at the heart of the ethical dilemma that managers, stockholders, and bondholders confront when companies initiate management buyouts or swap debt for equity. Comment on this statement. What steps might a board of directors ..
Journalize the two treasury stock transactions : On September 1, it sells 300 shares of the treasury stock for cash at $11 per share. Journalize the two treasury stock transactions.

Reviews

Write a Review

Data Structure & Algorithms Questions & Answers

  Calculate the diffie-hellman key values

Calculate the Diffie-Hellman key values. Calculate values for both keys (secret key a and secret key b). You must show your work for full credit.This includes the calculations each person performs to calculate and verify the values.

  Work out the matching determined by the coda

There are six students, A, B, C, D, E, and F, and three colleges, X, Y, and Z, each with room for two students. The student preferences are given in Table 1 and the college preferences are given in Table 2. Work out the matching generated by SODA. ..

  Write an algorithm that converts a decimal number

Write an algorithm that converts a decimal number between 0 and 15 into its 4 bit unsigned binary representation.

  Ambiguity in proposed algorithm-in representation algorithm

Describe distinction between the ambiguity in proposed algorithm and ambiguity in representation of the algorithm.

  C++ program to evaluate expressions combining set union

Create a C++ program to evaluate expressions combining set union, set intersection and parentheses

  Formula to compute number of address bus conductors

If an address bus needs to be able to address 8-devices, how many conductors will be needed? What if each of those devices also requires to be able to talk back to the I/O control device?

  Use of sequential or relational file

Assume you wish to keep a record of everything you have in your house. You could use a sequential data document to keep track of common items such as 'cloths'.

  Display the array

In this lab, please complete a given program to perform the following tasks: 1.Allocate a 10 by 5 2D byte array dynamically. The way of allocation must be consistent with page 39 in chap9.ppt. Each element is a byte. 3.Display the array.

  Eliminate every other integer beginning with the integer

the Collections class which has an algorithm called rotate(List list, int distance) which can be used to rotate a list left or right. use to eliminate every other Integer beginning with the Integer in the second position. Remember that if you rem..

  Features of a database

What is a VIEW and what are its uses?

  Array implementation of the queue

Assuming both integer and pointer occupies 4 bytes each, Array implementation of the queue requires Blank 1_______ bytes and the linked list implementation of the stack requires Blank 2_____bytes.

  What are entity-relationship diagrams

What are entity-relationship diagrams, and how are they used? Discuss the ethical issues to consider when planning a database.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd