반응형




이진 트리 (노드)를 나타내는 구조체는 다음과 같다.


1
2
3
4
5
6
typedef struct _bTreeNode
{
    BTData data;
    _bTreeNode *left;
    _bTreeNode *right;
} BTreeNode;
Crocus



이 구조체 하나로 이진 트리를 제작할 수 있게 된다.


연결 리스트를 마치고 이진 트리를 접한다면, 의문점이 생길 것이다.


'리스트에 대한 구조체가 있고, 노드에 대한 구조체가 있어야되는데 이진 트리는 노드를 표현하는 구조체 하나로 이진트리를 구성 할 수 있나?'



해답은 다음과 같다.


트리의 모든 주소값을 알 필요 없이 그 트리의 루트 노드 주소값만 저장하고 있다면


모든 트리의 값들을 볼 수 있다.

구조체의 표현은 다음과 같이 나타낼 수 있다.






반응형