Question
public static int find(int[] array, int value) { for (int i = 0; i < array.length; i++) { if (array[i] == value) { return i;
public static int find(int[] array, int value) { for (int i = 0; i < array.length; i++) { if (array[i] == value) { return i; } } return -1; }
Algorithm: find()
A) Minimum Statements. How many statements would be executed in a call to find() when the array size is zero (n == 0)?
B) Best Case Scenario. Under what conditions would the minimum possible number of loop iterations be executed for an array where n is large? Where would the target element be located in the array? What is the growth function under these conditions?
C) Worst Case Scenario. Under what conditions would the maximum number of loop iterations be executed for an array where n is large? What would be necessary such that the loop cannot exit early? What is the growth function under these conditions?
D) Expected Average Case Scenario. Assuming a randomly ordered array of unique elements and the target element is in the array, where would a target element be located on average? What is the expected average number of loop iterations for a call to find()? What is the average growth function under these conditions?
E) What is the runtime order (big-O) of find() based on the above growth functions?
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started