On Thursday, June 30, 2016 at 2:12:30 PM UTC+2, Ahmed Mazari wrote:
>
> Hi Andre.
> You will fnd attached my files and a picture that illustrates the tree
> structure l'm looking for.
> file 1 : somme comments on your codes
> file 2 : my code to be improved.
>
> For the part of your code. We should add child, number of child and data.
> the structure seems to be appropriate from my point of view
>
> type MyNode{T}
> data:: T
> level::Int
> child :: Vector{MyNode}
> nchild :: Int
> nLeafs::Int
> leafs::Vector{MyNode}
> end
> 1) What's the purpose of this line MyNode() = MyNode(0,0,MyNode[]) ?
> 2) for level 0 it's the root as you defined it :
>
> root = MyNode(0,N, [MyNode() for i in 1:N])
>
> but for level 1 it will be child :
> child= MyNode(......)
>
> for node in root.child
> # we have to link root to child and transferer data
> # need to define function addEdge()
>
>
> end
>
> level 2 :
> leaf= MyNode(......)
>
> for leaf in root.leaf
> # we have to link childs to their own leafs and transferer data
> # need to define function addEdge()
> end
>
>
>
> On Wednesday, June 29, 2016 at 7:47:25 PM UTC+2, Andre Bieler wrote:
>>
>> Not very elegant, but maybe something like this?
>>
>> type MyNode
>> level::Int
>> nLeafs::Int
>> leafs::Vector{MyNode}
>> end
>>
>> MyNode() = MyNode(0,0,MyNode[])
>>
>> N = 100
>> root = MyNode(0,N, [MyNode() for i in 1:N])
>>
>> then you can go on and define the 1st level with a for loop and so on.
>> Because it is only 3 levels I guess you can manually set it up, otherwise
>> you want to use recursive functions or so.
>>
>> For 2nd level:
>>
>> for node in root.leafs
>> do_whatever
>> end
>>
>
files2.jl
Description: Binary data
file1.jl
Description: Binary data
