如何在 MATLAB 中制作二叉搜索树
How to make binary search tree in MATLAB
我正在尝试在 MATLAB 中制作一个二叉搜索树并用字符填充节点,我知道节点可以用结构制作,但我不明白如何连接它们以使其成为二叉树。
我的结构有以下字段:left
(对于具有较低值的节点),value
,right
(对于具有较高值的节点)。
您应该使用结构数组,并使用数组索引而不是指针。所以你的结构:
node = struct('left',[],'right',[],'value',0);
您可以像这样添加一个节点:
node(2).value = 1;
node(1).left = 2; % the index of the new node
正在创建一棵树,其中 node(2)
是 node(1)
的左侧 child。
isempty(node(i).left)
表示节点i
没有左child.
我正在尝试在 MATLAB 中制作一个二叉搜索树并用字符填充节点,我知道节点可以用结构制作,但我不明白如何连接它们以使其成为二叉树。
我的结构有以下字段:left
(对于具有较低值的节点),value
,right
(对于具有较高值的节点)。
您应该使用结构数组,并使用数组索引而不是指针。所以你的结构:
node = struct('left',[],'right',[],'value',0);
您可以像这样添加一个节点:
node(2).value = 1;
node(1).left = 2; % the index of the new node
正在创建一棵树,其中 node(2)
是 node(1)
的左侧 child。
isempty(node(i).left)
表示节点i
没有左child.