이진탐색트리의 구조를 이해하고, 순회(preorder, inorder, postorder)와 추가연산을 구현한다.
- 최초 등록일
- 2011.02.01
- 최종 저작일
- 2010.01
- C언어
- 가격 1,000원
소개글
1. 이진탐색트리를 위한 구조체를 다음과 같이 정의한다.
typedef struct btree* tree;
struct btree {
node root;
int size;
}
typedef struct treenode* node;
struct treenode {
int key;
node left, right, parent;
};
2. [4점] 강의노트를 보고, search 함수를 작성한다. 트리 T에서 key 값을 갖는 노드를 찾아 리턴한다. 그런 노드가 없다면 null을 리턴한다.
node search (tree T, int key)
3. [10점] 강의노트를 보고, insert 함수를 작성한다. key 값을 저장하기 위한 node를 생성한후, 트리 T에 삽입한다.
void insert (tree T, int key)
4. [6점]강의노트를 보고, preorder, inorder, postorder 함수를 작성한다.
void preorder (tree T)
void inorder (tree T)
void postorder (tree T)
5. main 함수에서 몇 개의 key 값을 트리에 추가한 후, search 함수를 테스트해보고,
preorder/inorder/postorder를 호출해본다.
컴파일 실행환경
없음
본문내용
1. 이진탐색트리를 위한 구조체를 다음과 같이 정의한다.
typedef struct btree* tree;
struct btree {
node root;
int size;
}
typedef struct treenode* node;
struct treenode {
int key;
node left, right, parent;
};
2. [4점] 강의노트를 보고, search 함수를 작성한다. 트리 T에서 key 값을 갖는 노드를 찾아 리턴한다. 그런 노드가 없다면 null을 리턴한다.
node search (tree T, int key)
3. [10점] 강의노트를 보고, insert 함수를 작성한다. key 값을 저장하기 위한 node를 생성한후, 트리 T에 삽입한다.
void insert (tree T, int key)
4. [6점]강의노트를 보고, preorder, inorder, postorder 함수를 작성한다.
void preorder (tree T)
void inorder (tree T)
void postorder (tree T)
5. main 함수에서 몇 개의 key 값을 트리에 추가한 후, search 함수를 테스트해보고,
preorder/inorder/postorder를 호출해본다.
참고 자료
없음