我故意創造這個代碼錯誤的和不平衡的二叉樹:打印不平衡的二叉樹
void createlist (tree*& node) {
node = new tree;
node->num = 1;
node->left = new tree;
node->left ->num = 2;
node->right = new tree;
node->right->num = 3;
node->left->left = new tree;
node->left->left->num = 4;
node->left->right = new tree;
node->left->right->num = 5;
node->right->left = new tree;
node->right->left->num = 6;
node->left->left->left = new tree;
node->left->left->left->num = 7;
}
然後,當我試圖使用一個普通的功能,打印:
void print (tree* node) {
if (node!= 0) {
print (node->left);
cout << node->num << " ";
print (node->right);
}
}
它拋出一個錯誤:
Access violation reading location 0xcdcdcdd5.
在此位置:
print (node->left);
我剛剛開始使用樹木,不太理解這個錯誤的原因。你能幫忙嗎?
你指的是哪一個樹類? – matthias 2015-03-03 12:07:40