Final answer:
The storage use of a BST, a linked list, and a sorted array depends on the size and elements of the structures. A BST and a linked list use additional memory for pointers, while a sorted array uses memory only for the data. The most memory-efficient structure varies depending on usage context and operations required.
Step-by-step explanation:
The question pertains to the storage use of different data structures: a Binary Search Tree (BST), a linked list, and a sorted array. The answer to which one uses more memory is c) Depends on the size and elements. A BST typically uses more memory than a sorted array because each node stores additional information, such as pointers to child nodes. However, a linked list also uses additional memory for pointers linking the nodes together. The actual memory usage can vary based on the implementation and the specific elements stored within the structures.
A sorted array is typically more memory-efficient for read-heavy operations where the array size doesn't change often because it only needs to store the actual data without any pointers. On the other hand, a linked list is more memory-intensive due to the storage requirements for the pointers but provides efficient insertion and deletion operations, especially in large datasets. A BST is a compromise between the two, allowing for efficient search operations while still requiring additional memory for node pointers.In conclusion, the most memory-efficient structure can vary based on the context of use. If frequent insertions and deletions are required, a linked list or BST might be favored despite the increased memory usage. If the dataset is mostly static and search operations are common, a sorted array could be preferred for its memory efficiency.