Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Project 1 Searching, Step Counts, and Big O Analysis This is an individual assignment. You will have lab time to work on this assignment as

Project 1

Searching, Step Counts, and Big O Analysis

This is an individual assignment. You will have lab time to work on this assignment as well as homework time.

Create a project that analyzes the complexity of linear search and binary search using an empirical step count for each. Suggested array sizes will be 200, 400, 600, and 800.

  • Create the arrays and assign randomized values for each element in the array. The randomized values should range from 1 to twice the size of the array. For example, for an array of 200, assign random values between 1 and 400. Use a constant for the size of the array. Edit the value of the constant in different runs of the program to account for the various array sizes.
  • Perform a step count test for linear search. To get an appropriate average step count for linear search, run the search in a counting loop that executes 1000 times, and divide the total step count for all 1000 searches by 1000. Each call to the linear search function should use its own random value for the search parameter covering the appropriate range of each array. Display both the total step count of the 1000 linear searches and the average step count for linear search.
  • Sort the array.
  • Similarly perform and display the step count totals and average for binary search.
  • You may use some of the code in LinearSearch.cpp and BinarySearch.cpp under our course Resources as a resource but be on the alert for any errors in these programs.
  • When you display the arrays to demonstrate your work, display each value on its own line and show the index as a label for the elements value. For example, if the first element has a value of 39, display as follows:

[0]: 39

Submit:

  1. Zipped project folder for investigating the step counts of each search. The project folder should be submitted in its own zipped project folder. Use only .zip folders (not .rar folder).
  2. An Excel spreadsheet showing how the growth of the data set (n) affects the number of steps that each algorithm takes. The data should be shown in table and chart displays. See Unit 2 Part 3 of CSC 231 Units. Copy and paste the output of your program showing the step count data for linear and binary search for each of the four sizes of the array.

Grading

Linear Search

Code is documented and uses meaningful identifiers

Code should be well-structured and easy to read

Search runs correctly

Step counts are reasonably correct

Binary Search

Code is documented and uses meaningful identifiers

Code should be well-structured and easy to read

Search runs correctly

Step counts are reasonably correct

Excel spreadsheet

Screen shots of programs runs show step count data.

Data displayed in table format.

Charts show how the growth of the data set affects the number of steps that the algorithm takes.

5 points

5 points

10 points

10 points

5 points

5 points

10 points

10 points

10 points

10 points

20 points

Total 100

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Repairing And Querying Databases Under Aggregate Constraints

Authors: Sergio Flesca ,Filippo Furfaro ,Francesco Parisi

2011th Edition

146141640X, 978-1461416401

More Books

Students also viewed these Databases questions