0
做一些课程,我需要做一个二叉搜索树。一块蛋糕,应该很有趣。 因为C++没有使用字典,所以我决定使用BST创建一个字典。 我在网上找到了一些示例代码,给了我一个关于它们如何放在一起的简单想法,这些都是相对简单的,但是对于C++来说是新的并且来自C#环境,有一件事让我陷入困惑,那就是' C'。我不明白为什么'c'在while循环中返回true,或者为什么在左侧或右侧更改数据会影响此结果。C++结构返回true,但为什么?
node* t = new node;
node* parent;
t->data;
t->left = NULL;
t->right = NULL;
parent = NULL;
...
node* c;
c = root;
while (c)
{
parent = c;
if(t->data > c->data)
{
c = c->right;
}
else //else it's assigned left
{
c = c->left;
}
}
啊,我明白了。非常感谢你。我早些时候阅读了std :: map,但我想它会让我的思想滑落,但噢,重新发明轮子没有任何坏处。 – Anthony