For 10 points, name this data structure with a root at the top and leaves at the bottom.
One type of these uses zig-zig and zig-zag steps to perform a splay operation, and a set of strings can be stored in the radix type. The minimum element of another type can be removed in big O of log n time, a property utilized in a namesake algorithm, the heap sort. Kruskal's algorithm finds the minimum spanning type of this structure. The AVL and Red-Black types are self-balancing. Each node has at most two children in the binary type, a subtype of which is very efficient to search. For 10 points, name this data structure with a root at the top and leaves at the bottom.
One type of these uses zig-zig and zig-zag steps to perform a splay operation, and a set of strings can be stored in the radix type.
{trees} [prompt on {heap} before mentioned]