:: 게시판
:: 이전 게시판
|
이전 질문 게시판은 새 글 쓰기를 막았습니다. [질문 게시판]을 이용바랍니다.
통합규정 1.3 이용안내 인용"Pgr은 '명문화된 삭제규정'이 반드시 필요하지 않은 분을 환영합니다.법 없이도 사는 사람, 남에게 상처를 주지 않으면서 같이 이야기 나눌 수 있는 분이면 좋겠습니다."
10/06/11 09:33
else if(p->left==NULL || p->right==NULL){
if(p->left==NULL){ 이부분이 else if(p->left==NULL || p->right==NULL){ if(p->left != NULL){ 이렇게 되어야 하는 거 아닌가요? 이부분에서 막혀서 진도가 안나가네요.
10/06/11 10:02
if(p->left != NULL)
이라는 가정하에 maxNode는 그 아래에 있는 가장 큰 값을 찾아 내면 되는 거군요
treeNode* maxNode(treeNode* start) { if(start->right == NULL) return start; return maxNode(start->right); 이렇게 하시면 되겠네요. maxNode 함수를 만드는 건 어려운 게 아닌데 저 알고리즘에서 아이온님이 얘기하신 [첫째, 왼쪽 subtree에서 "제일 큰 노드"의 값을 현재 노드에 카피한다. 둘째, 이 제일 큰 노드인 q를 지워준다] 를 이해하는 게 관건이군요.
10/06/11 13:18
그러개요..아이온님 댓글 지우셧네..
저도 저핵심이라고 주신 댓글보면서 계쏙 고민하고 고민하면서 짜고있엇는데... 하여튼 빈터님 아이온님 답변 감사합니다
|