У меня есть неориентированный граф на матрисе с такими отношениями смежности вершин;
/* a b c d
* a -1 0 1 1
* b 0 -1 1 1
* c 1 1 -1 1
* d 1 1 1 -1
*
*/
int G[4][4] = {{-1, 0, 1, 1},
{ 0,-1, 1, 1},
{ 1, 1,-1, 1},
{ 1, 1, 1,-1}};
Я хочу нарисовать этот график в системе Cininate. Каков алгоритм, который дает каждую позицию вершины (x, y) любым методом (направленный по силе, против пружины)? Я просто прошу псевдокод, а не какую-либо библиотеку или программное обеспечение для рисования.
Спасибо.