Согласен, там понятнее. Я просто хотел проиллюстрировать, что в Алголе-68 есть
синтаксис для цикла, условие которого проверяется в середине. И для этого
_дословно_ переписал алгоритм, предложенный Бойко на Си (у него был бесконечный
цикл с единственным выходом по break в середине). Т.е.
А все-таки на следующей странице оно понятнее (функция siftDown):
https://neerc.ifmo.ru/wiki/index.php?title=%D0%94%D0%B2%D0%BE%D0%B8%D1%87%D0%BD%D0%B0%D1%8F_%D0%BA%D1%83%D1%87%D0%B0
Фишка в том, что для выхода из цикла while здесь имеются две разные
причины:
1) у данной текущей вершины p (там
> Т.е. исходный алгоритм на Си на пару писем раньше тоже был запутанным
Спасибо, Александр! Подтверждаю. Во всем виноват я. Написал очень
запутанную процедуру. Допишу имейл и предприму самобичевание плетью
с крючками.
> А все-таки на следующей странице оно понятнее (функция siftDown)