Which sorting algorithm is generally considered the fastest for large datasets with an average time complexity of O(n log n)?
Bubble Sort
Selection Sort
Insertion Sort
Merge Sort
What is the worst-case time complexity of deleting an element from an unsorted array?
O(n)
O(log n)
O(1)
O(n log n)
Which of the following asymptotic notations represents the tightest upper bound on the growth of a function?
Big Theta (Θ)
Big-O (O)
Little-o (o)
Big Omega (Ω)
Which of the following best describes the relationship between benchmarking and optimizing code for better time complexity?
Optimization is done after benchmarking to identify areas for improvement.
Benchmarking is done after optimization to verify the improvements.
Benchmarking and optimization are independent processes.
Benchmarking is a type of optimization technique.
If an algorithm's time complexity is O(n^2), what can you conclude about its best-case time complexity?
It is always constant, i.e., O(1).
It is Ω(n^2).
It is also O(n^2).
It cannot be determined from the given information.
Which of these Big-O notations represents the most efficient algorithm for large input sizes?
O(n^2)
If an algorithm has a time complexity of O(n log n), what can you infer about its runtime as the input size doubles?
It remains constant
It increases by a factor of log n
It increases slightly more than double
It increases exponentially
Merge sort and heapsort are examples of sorting algorithms with which time complexity?
O(2^n)
Which notation represents a strict upper bound, meaning the function grows strictly slower than the specified function?
Little-omega (ω)
What is the best-case time complexity of the insertion sort algorithm?