Трудно судить о том какой вариант лучше всего не видя всей задачи — как, что и для чего сортируется. Как показывает практика и исследования лучше всего все придумать за пользователя, чтобы ему вообще не нужно было ничего сортировать и фильтровать. 90% людей используют дефолтное представление и никогда ни пользуются предложенными сортировками и т.п. Вероятно, можно немного видоизменить иерархию видов, чтобы до нужного элемента можно было добраться как то по другому, опять таки это только предположение и если других вариантов нет, то нужно использовать наиболее наглядное представление пусть оно и занимает больше места.
Если у вас сложно организованный набор данных для манипулирования которым необходима дополнительная сортировка и фильтрация значит пользователь должен быть в теории сильно заинтересован в получении этих данных, чтобы в принципе пользоваться фильтрами и сортировками. А если он заинтересован, то вы можете выбрать любой паттерн — пользователю придется с ним разобраться иначе он не сможет получить данные которые ему нужны. Это хорошо иллюстрируют программы для налоговой, пенсионного фонда и т.п. там где пользователю хочешь не хочешь, а придется разобраться иначе не сдать декларацию.
А вот если у вас программа которая представляет данные которые представляет кто то другой но добавляет к этому сортировки и т.п. то я бы все таки задумался над первым абзацем о необходимости изменить иерархию данных, чтобы ими стало удобнее пользоваться и без сортировок и фильтров. Но чтобы что то утверждать опять таки надо представлять задачу полностью.
Ну и подитоживая извиняюсь за много букв и соглашаюсь в общем случае с Ethiopian — интуитивно понятно значит лучше даже если занимает много места (разумно много конечно).