SagePtr: В целом, стало ясно. Неоднозначный результат может быть из-за того что из одного и того же набора чисел можно собрать разные binary tree и, соответственно, получаться разные кучи. А как понять "в каком порядке он сравнивает, топит или всплывает элементы"? Я полагал, раз мы топим родителя, то потомок всплывет на его место, иначе никак, верно? А сравниваем узлы порядку, по возрастанию индексов, тоже, иначе никак же?
SagePtr: т.е. результат может быть неоднозначным? В моем случае, результат начал разниться в тот момент когда родитель был с ключом =3, а потомок слева=10, справа =11(они же не одинаковые?). По логике надо было топить вправо. Но если топить влево результат как-раз совпал бы.