Я пытаюсь воссоздать диаграмму примера для двоичного дерева поиска с помощью GraphViz. Вот как это должно выглядеть в конце:
Это моя первая попытка:
digraph G {
nodesep=0.3;
ranksep=0.2;
margin=0.1;
node [shape=circle];
edge [arrowsize=0.8];
6 -> 4;
6 -> 11;
4 -> 2;
4 -> 5;
2 -> 1;
2 -> 3;
11 -> 8;
11 -> 14;
8 -> 7;
8 -> 10;
10 -> 9;
14 -> 13;
14 -> 16;
13 -> 12;
16 -> 15;
16 -> 17;
}
Но, к сожалению, GraphViz не заботится о горизонтальных положениях дерева, поэтому я получаю:
Как добавить ограничения, чтобы горизонтальные позиции вершин отображали их полное упорядочение?