Question: Consider the programs in the attached file and give a Big Oh running time for each. ( 4 0 points ) 1 . a )

Consider the programs in the attached file and give a Big Oh running time for each. (40 points)1.a) int peace(const std::vector& arr, int target){
for (int i =0; i < arr.size(); i++){
if (arr[i]== target)
return i; // Target found
}
return -1; // Target not found
}
int main(){
std::vector arr ={1,3,5,7,9,...,10000000};
int target =7;
int result = peace(arr, target);
std::cout << "Index: "<< result << std::endl;
return 0;
}
1.b) void evaporate(std::vector& arr){
int n = arr.size();
for (int i =0; i < n -1; i++){
int minIdx = i;
for (int j = i +1; j < n * m; j++){
if (arr[j]< arr[minIdx]){
minIdx = j;
}
}
std::swap(arr[i], arr[minIdx]);
}
}
int main(){
std::vector arr ={64,25,12,22,11,...,23000000000};
evaporate(arr);
for (int i =0; i < arr.size(); i++){
std::cout << arr[i]<<"";
}
1.c)void grind(std::vector& arr){
int n = arr.size();
for (int i =0; i < n -1; i++){
int minIdx = i;
for (int j = i +1; j < n; j++){
if (arr[j]< arr[minIdx]){
minIdx = j;
}
}
std::swap(arr[i], arr[minIdx]);
}
}
int main(){
std::vector arr ={64,25,12,22,11};
grind(arr);
for (int i =0; i < arr.size(); i++){
std::cout << arr[i]<<"";
}
1.d) while (low <= high){
int mid = low +(high - low)/2;
if (arr[mid]== target)
return mid;
else if (arr[mid]< target)
low = mid +1;
else
high = mid -1;
}
return -1; // Target not found
}
int main(){
std::vector arr ={1,3,5,7,9};
int target =7;
int result = hack(arr, target);
std::cout << "Index: "<< result << std::endl;
return 0;
}

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Programming Questions!