Which algorithm repeatedly finds the minimum element from the unsorted part and puts it at the beginning?
Selection Sort
Merge Sort
Bubble Sort
Quick Sort
Which of the following is NOT a valid reason for using sorting algorithms?
Presenting data in a user-friendly order.
Improving the performance of searching algorithms.
Compressing files for storage efficiency.
Finding the median of a dataset.
Insertion Sort can be considered an incremental algorithm. What does this mean?
It requires the entire dataset to be present in memory
It can handle data arriving in a continuous stream
It performs better on smaller datasets
It divides the problem into smaller subproblems
What is the primary operation used in Insertion Sort to place an element in its correct position?
Shifting
Swapping
Merging
Comparison
Bubble sort performs better than selection sort in which scenario?
Bubble sort never outperforms Selection sort
When the input array is reversely sorted.
When the input array is randomly ordered.
When the input array is already sorted.
What is a key limitation of both Bubble Sort and Selection Sort?
They are not stable sorting algorithms
They have a high space complexity
They are inefficient for large datasets
They cannot handle arrays with duplicate elements
Why are sorting algorithms considered fundamental in computer science?
They are only used in specific niche applications.
They are rarely used in modern software development.
They are primarily used for displaying data to the user.
They are the basis for more complex algorithms and data structures.
Which of the following best describes the concept of 'stability' in sorting algorithms?
A stable sorting algorithm uses a fixed amount of memory regardless of input size.
A stable sorting algorithm always has the lowest time complexity.
A stable sorting algorithm is resistant to errors in the input data.
A stable sorting algorithm maintains the relative order of equal elements.
Why is Insertion Sort not preferred for large datasets?
It is difficult to implement
It is not a stable sorting algorithm
It has a high space complexity
Its time complexity is quadratic in the worst case
Which of these situations might make Bubble Sort a suitable choice?
When the input array is almost sorted
Sorting data with a complex key structure
Real-time applications where speed is critical
Sorting a very large dataset