[자료구조][C++] Tree (자료구조)
- 최초 등록일
- 2006.03.26
- 최종 저작일
- 2006.03
- C언어
- 가격 1,000원
소개글
[C++] Tree (자료구조)
컴파일 실행환경
c++
본문내용
#include <iostream.h>
#include <string.h>
#include <stdlib.h>
class tree;
//tree 전방선언
class treenode {
//클래스 treenode 선언
friend class tree;
treenode(int element)
{
data = element;
leftchild=0; //왼쪽 자식 필드
rightchild=0; //오른쪽 자식 필드
parent=0; //부모 필드
link=0; //레벨순위에 의한 링크필드
}
private:
treenode *parent;
treenode *leftchild;
int data;
treenode *rightchild;
treenode *link;
};
class tree {
//클래스 tree 선언
public:
tree() {
root=0; current=0; precur1=0; current1=0; temcur1=0;
}
//tree 생성자.
void addnode(); //노드삽입
void delnode(); //노드삭제
void trip(); //트리순회
void display(); //트리출력
void attach(int k); //노드삽입을 위한 attach
private:
treenode *root; //tree의 루트노드
treenode *current;
treenode *precur1;
treenode *current1;
treenode *temcur1;
treenode *temcur2;
};
void tree::addnode() {
//삽입함수 구현
int i;
cout<<"INPUT The Add Node->Data : ";
cin>>i;
//데이터를 i에 저장
if (root==0)
{ //노드가 처음 삽입된다면 노드를 생성한다.
//그 노드를 root 및 corrent로 지정
treenode *newnode = new treenode(i);
current=root=newnode;
temcur1=newnode;
}
else {
//처음 삽입되는 노드가 아니면 attch()호출
attach(i);
}
display();
//삽입이 끝났으면 트리 출력
}
참고 자료
없음