我正在构建一棵树以找到更快的路径。 我在输入流上阅读了房间之间的链接。
例如,我可以使用这种类型的地图:
##start
0 1 0
##end
1 5 0
2 9 0
3 13 0
0-2
2-3
3-1
开始表示我开始的房间,并结束我需要到达的房间。
我有一个变量
struct s_tree **leaf;
这是指向其他房间的指针数组。 例如,如果我有:
0-2 and 0-3
leaf[0]
将指向2号房间,leaf[1]
将指向3号房间。
目前我这样分配:
root->leaf = xmalloc(sizeof(t_tree) * 100);
问题是,我不知道分配这个变量需要多少字节。 如果有超过100个链接,我将无效写入。 我可以分配100000肯定,但它不会非常"干净"。 我已经尝试重新分配它,但它没有工作;情况更糟。
你知道吗?