I am having trouble understanding why solutions for finding the kth smallest element uses a Max heap approach. And for the kth largest element a min heap approach. Wouldn't it make more sense to use min heap to find kth smallest element, since the smallest element will always be root? So if we want to find the 3rd smallest element, then we just delete the root 2 times, build the heap, and we get the 3rd smallest. In a max heap the smallest is not at the root, so why is it better to use? The same goes for sorting in ascending or descending numbers in an array. I see most people use max heap for ascending.