Page 412 - Do it! 자료구조와 함께 배우는 알고리즘(C 언어, 3쇄)
P. 412

노드를 표현하는 구조체 BinNode

                   이진검색트리의 개별 노드는 자기 참조형 구조
                   체인 BinNode입니다. 그림 10-9처럼 3개의                        BinNode
                                                                  data
                   멤버로 구성되어 있습니다.                                 left         왼쪽 자식 노드에 대한 포인터
                                                                  right        오른쪽 자식 노드에 대한 포인터
                     • data  …  회원 데이터
                     • left   …  왼쪽 자식 노드에 대한 포인터
                     • right  …  오른쪽 자식 노드에 대한 포인터
                                                                  Node       Node

                                                                  [그림 10-9] 노드를 나타내는 구조체 BinNode
                   앞으로 left, right를 각각 왼쪽 포인터, 오른쪽
                   포인터라고 부르겠습니다.


                    실습 10-2[A]                                               •완성 파일 chap10/BinTree.c

                     01  /* 이진검색트리 프로그램(소스) */
                     02  #include <stdio.h>
                     03  #include <stdlib.h>
                     04  #include "Member.h"   실습 11-1에서 작성
                     05  #include "BinTree.h"
                     06
                     07  /*--- 노드를 동적으로 할당 ---*/
                     08  static BinNode *AllocBinNode (void)
                     09  {
                     10    return calloc(1, sizeof(BinNode));
                     11  }
                     12
                     13  /*--- 노드 멤버의 값 설정 ----*/
                     14  static void SetBinNode(BinNode *n, const Member *x, const BinNode *left, const BinNode *right)
                     15  {
                     16    n->data = *x;       /* 데이터 */
                     17    n->left = left;      /* 왼쪽 자식 노드에 대한 포인터 */
                     18    n->right = right;    /* 오른쪽 자식 노드에 대한 포인터 */
                     19  }
                     20                                                      (실습 10-2[B]에서 계속)













                   412   C 알고리즘
   407   408   409   410   411   412   413   414   415   416   417