데이터 구조 - 이 진 트 리 생 성 반복 출력
typedef struct Node
{
DateType data;//
struct Node *Lchild;//
struct Node *Rchild;//
}BiTNode,*BiTree;
이 진 트 리 의 생 성 은 우리 가 사용 하 는 것 은 순서 서열 을 넓 히 고 이 진 트 리 를 만 드 는 기본 적 인 사 고 는 바로 1 이다. 키보드 에서 문 자 를 받 아 그 가 \ # 번호 가 맞 는 지 판단 하 는 것 이다.2. 그 다음 에 재 귀적 인 방법 으로 선착순 으로 좌우 아이들 의 지도 키보드 입력 빈 칸 을 계속 만 들 면 종료 코드 는 다음 과 같다.
BiTree Creat()
{
char ch;
BiTNode *S;
ch = getchar();
if(ch=='#')// #
{
return NULL;
}
S = (BiTNode *)malloc(sizeof(BiTNode));//
S->data = ch;//
S->Lchild = Creat();//
S->Rchild = Creat();//
return S;//
}
우 리 는 세 가지 순서 로 나 뉘 었 다.왼쪽 아 이 는 옮 겨 다 니 고 나 서 야 오른쪽 아 이 를 옮 겨 다 니 기 시작 했다.
void PrintXX(BiTree S)
{
if(S)//
{
printf("%c ",S->data );//
PrintXX(S->Lchild);//
PrintXX(S->Rchild);//
}
}
void PrintZX(BiTree S)
{
if(S)
{
PrintZX(S->Lchild);//
printf("%c ",S->data );
PrintZX(S->Rchild);//
}
}
void PrintHX(BiTree S)
{
if (S)
{
PrintHX(S->Lchild);//
PrintHX(S->Rchild);//
printf("%c ",S->data );
}
}
이 진 트 리 는 트 리 모양 에 따라 출력 합 니 다.
void Print(BiTree S, int h)
{
if(S)
{
Print(S->Rchild,h+1);
for(int i = 0;i<h;i++)
{
printf(" ");
}
printf("%c
",S->data);
Print(S->Lchild,h+1);
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
정수 반전Udemy 에서 공부 한 것을 중얼거린다 Chapter3【Integer Reversal】 (예) 문자열로 숫자를 반전 (toString, split, reverse, join) 인수의 수치 (n)가 0보다 위 또는 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.