[Data Structure] 스레드 이진 트리
이진 트리 - 이진 트리에 n개의 노드가 있을 경우 2n개의 링크 존재 2n개의 링크 중, n+1개의 링크 = NULL 2n개의 링크 중, n-1개의 링크 = 다른 노드를 가리킨다 NULL 링크에 중위 선행자/후속자를 저장해 놓은 트리 = 스레드 이진 트리 스레드 이진 트리 - NULL 링크를 이용해서 순환호출 없이 트리의 노드들을 순회 가능 - 단말 노드 / 비단말 노드를 구분하기 위해 is_thread 필드 필요 - 노드의 right를 후속자를 가리키게 설정, is_thread = 1로 설정 typedef struct treenode { char data; struct treenode* left; struct treenode* right; int is_thread; // 1이면 ->right는 중위 ..
2021.12.14