이진탐색트리 코딩질문
글쓴이: qw3709 / 작성시간: 목, 2017/12/07 - 10:56오후
// 포인터 p가 가리키는 노드와 비교하여 노드 x를 삽입하는 연산
void insertNode( char x ) {
treeNode* p=root;
treeNode* newNode;
treeNode* parent=NULL;
parent=p;
while(p != NULL)
{
if(xkey)
p=p->left;
else if(x==p->key)
{
printf("\n 이미 같은 키가 있습니다 \n");
return;
}
else
p=p->right;
}
/*if(parent==NULL)
p->key=x;
p->left=NULL;
p->right=NULL;
}
else if(parent!=NULL)
{
if(parent->key > x)
{
parent->left=p;
p->key=x;
p->left=NULL;
p->right=NULL;
}
else
{
parent->right=p;
p->key=x;
p->left=NULL;
p->right=NULL;
}
}*/
}
주석넣은부분에서 오류가나는거같아요..
주석을걸면 안팅기고 주석을 안걸면 팅겨요
Forums:
왜 parents를 가지고 하시려면 check하는 내부에서도 parents가 변경되어야 할듯합니다.
root가 시작으로 보이는데 root를 대입하는 부분이 안보이네요
p값은 없는 경우 null값일텐데요
메모리를 생성하는 부분도 안보이네요
총체적인 부실로 보입니다.
댓글 달기