Matlab 如何实现树结构
发布网友
发布时间:2022-04-24 17:16
我来回答
共4个回答
热心网友
时间:2022-04-12 19:01
树结构其实就是递归结构,matlab的每个元素可以是任意类型的,实际上就等于可以定义树结构了.其实只要有数组结构就可以定了树了。可以看看 http://www.mathworks.com/matlabcentral/newsreader/view_thread/264697
给出的解释。也可以参考c数据结构的书。
热心网友
时间:2022-04-12 20:19
由于matlab函数只能传值传递参数的*,操作起来稍有点不同。
建立初始化链表空间:
[L,Maintain]=InitList(N,'a1','a2','a3',......);
例子:现在需要建立一树,每个节点包含数据域,左指针域,和右指针域,估计需要的空间是100
[L,Maintain]=InitList(100,'Lcur','Rcur');
这样就得到一个主链表空间L,和一个维护数组Maintain。
L =
1x100 struct array with fields:
data
Lcur
Rcur
分配指针:
[P,Maintain]=Malloc(Maintain);
这里P就是分配到的指针号,注意一定要返回Maintain这个维护数组(因为matlab函数只能传值传递参数的原因)。然后就可操作了,比如L(P).data=1,赋值操作,和c里的P->data=1差不多意思。
释放指针:
Maintain = Free(Maintain,P)
在这里P是要释放的指针。
热心网友
时间:2022-04-12 21:53
用cell模拟?
热心网友
时间:2022-04-12 23:45
这个好像没有听说过