#include #include #include int linear_search(int nums[], size_t size, int val) { for (int i = 0; i < size; i++) { if (nums[i] == val) { //printf("Found it! It's at %d!\n", i); return i; } //printf("It isn't at %d so let's keep going!\n", i); } return -1; } int main(void) { int arr_size = 2000000; int my_nums[arr_size]; for (int i = 0; i < arr_size; i++) { my_nums[i] = (int)i; } struct timespec start, end; clock_gettime(CLOCK_MONOTONIC, &start); int result = linear_search(my_nums, arr_size, (int)(arr_size - 1)); clock_gettime(CLOCK_MONOTONIC, &end); double seconds = (end.tv_sec - start.tv_sec) + (end.tv_nsec - start.tv_nsec) / 1000000000; printf("Result: %d\n", result); printf("Time taken for %d items: %.3f seconds\n", arr_size, seconds); return 0; }