저는 데이터 구조가 새롭고 이진 트리 구현을 사용하여 추측 게임을하도록 지정되었습니다. 나는 파일 구현없이 프로그램 흐름을 완성했다.바이너리 트리가 파일에서 다시 작성되지 않습니다.
그것이 엔젤 록신인가 :? # Neneng B는 샘 핀토가 나는이 내 파일에 파일 에서 나무를 재건 문제가 이제 외부 파일에 preorderly 이진 트리를 저장 한? 화이트 뷰티?가요? 마리안 리베라? # 핫드 섹시? 크리스틴 레이즈인가? ###
"#"은 NULL 노드를 나타냅니다.
나는 또한 나의 코드가있다. 교수님이 준 알고리즘을 따른다. 나는 인터넷에서 검색하고 내 교수가 말한 것과 같은 알고리즘을 주었다. 내 문제는 프로그램이 충돌 할 때마다 3 번째가 아닌 모든 데이터에 있습니다. 충돌의 주된 이유는 세 번째 non-null 데이터가 삽입 된 후에 null로 설정되지 않은 노드라고 생각합니다. 그렇다면 어떻게 NULL로 설정하면 내 프로그램이 충돌하지 않을 수 있습니다. 파일의 데이터를 문자열 배열에 할당하고 배열의 마지막 색인에 "\ 0"을 설정합니다.
void read(node *temp)
{
while(array[j]=="#")
j++;
if(array[j]=="\0")
return;
node *nNode;
nNode = new node;
nNode->yes=NULL;
nNode->no=NULL;
nNode->data=array[j];
j++;
temp=nNode;
read(temp->yes);
read(temp->no);
}