構造体を含む .h ファイルがあり、このファイルを編集してはなりません。
struct KnightTree
{
int key;
int level;
int balance; //will be used in AVL only, and be ignored in other cases.
KnightTree* pLeftChild;
KnightTree* pRightChild;
};
ここにコードを記述する .cpp ファイルには、BST に 2 つの値 (キーとレベル) を挿入するコードを記述しました。
void BSTinsert(KnightTree* tree, int k, int lvl)
{
KnightTree* newnode;
if (tree == NULL)
{
newnode->key=k;
newnode->level=lvl;
newnode->pLeftChild=NULL;
newnode->pRightChild=NULL;
tree = newnode;
}
else
{
if (tree->key > k)
BSTinsert(tree->pLeftChild,k,lvl);
else if (tree->key <= k)
BSTinsert(tree->pRightChild,k,lvl);
}
}
しかし、実行すると、コンソールは約 3 秒間「思考」し、 「exe が動作を停止しました」というエラー ポップアップが表示されたので、プログラムを閉じる必要があります。簡単だと思いますが、今はちょっと混乱しています... Visual C++ 6.0を使用しています(この古いバージョンを使用する必要があります...)
君たちありがとう!