이 진 트 리 순서 저장 소
1540 단어 데이터 구조
#include
#include
#include
#include
#pragma warning (disable:4996)
#define MAX_TREE_SIZE 100
#define OK 0
#define ERROR -1
typedef int status;
typedef int elemtype;
typedef elemtype sqbitree[MAX_TREE_SIZE];
typedef struct {
int level;
int order;
}position;
status initbitree(sqbitree t) {
if (t == NULL) return ERROR;
int i;
for (i = 0;i < MAX_TREE_SIZE;i++)
t[i] = 0;
return OK;
}
status clearbitree(sqbitree t) {
if (t == NULL) return ERROR;
int i;
for (i = 0;i < MAX_TREE_SIZE;i++)
t[i] = 0;
return OK;
}
status createbitree(sqbitree t) { // i>=MAX_TREE_SIZE
if (t == NULL)return ERROR;
int i = 0;
printf(" ( ),0 , 999 。 ≤%d:
", MAX_TREE_SIZE);
while (1) {
scanf("%d", &t[i]);
if (t[i] == 999)break;
if (i != 0 && t[i] != 0 && t[(i + 1) / 2 - 1] == 0) {
printf(" , ");
return ERROR;
}
i++;
}
while (i < MAX_TREE_SIZE) {
t[i] = 0;
i++;
}
return OK;
}
int bitreedepth(sqbitree t) {
if (t == NULL)return -1;
int i, j = -1;
for (i = MAX_TREE_SIZE - 1;i >= 0;i--)
if (t[i] != 0) break;
i++;
do
{
j++;
}while (i >= pow(2, j));
return j;
}
int main() {
sqbitree bt;
initbitree(bt);
createbitree(bt);
int depth = bitreedepth(bt);
printf("%d
", depth);
system("pause");
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 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에 따라 라이센스가 부여됩니다.