Смотря как обходить. Но сложнее, да. Потому я склоняюсь к варианту Алекса больше. У тебя дерево должно строится по одному критерию, а другие критерии уже лишь быть предикатами на вершинах.
если бы был некоторый основной способ сортировки, с локальной приоретизацией потомков, то проблемы бы небыло)