Question: Please Type your answer and reasoning Part 2: Complexity Analysis For Ex.1-3, along with reasoning, analyze both runtime and space complexity using Big O for

Please Type your answer and reasoning

Part 2: Complexity Analysis

For Ex.1-3, along with reasoning, analyze both runtime and space complexity using Big O for the best, average, and worst cases (relative to input size n) . Type your answer and reasoning

Ex.1: Linear search algorithm to find a specific element (with value x) in an array: (n = the size of the array)

int linearSearch(int arr[], int n, int x) { for (int i = 0; i < n; i++) { if (arr[i] == x); return i; } return -1; }

Ex.2: Bubble sort to sort an array: (n = the size of the array)

void bubbleSort(int arr[], int n) { for (int i = 0; i < n-1; i++) { bool swapped = false; for (int j = 0; j < n-i-1; j++) { if (arr[j] > arr[j+1]) { int temp = arr[j]; arr[j] = arr[j+1]; arr[j+1] = temp; swapped = true; } } 
if (swapped == false) break; } }

Ex.3: Remove a node from the end of a singly list: (n = the size of the list)

struct Node { int data; struct Node* next; };
struct Node* head = NULL; 
void remove_end() { if (head == NULL) return; if (head->next = = NULL) { free(head); head = NULL; return; } struct Node* current = head; while (current->next->next != NULL) current = current->next; free(current->next); current->next = NULL; }

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 Databases Questions!