全球旧事资料 分类
ueueQQbaseQElemTypemallocMAXQSIZEsizeofQElemType分配定长的空间,相当于一个数组ifQbase存储分配失败exit0Qfro
tQrear0初始化下标retur
1插入元素e为Q的新的队尾元素i
tE
QueueSqQueueQQElemTypeeifQrearMAXQSIZE队列满,增加1个存储单元QbaseQElemTypereallocQbaseQrear1sizeofQElemTypeifQbase增加单元失败retur
0QbaseQreareQrearretur
1若队列不空则删除Q的队头元素用e返回其值并返回1否则返回0i
tDeQueueSqQueueQQElemTypeeifQfro
tQrear队列空retur
0eQbaseQfro
tQfro
tQfro
t1retur
1根据LR为1或0删除T中p所指结点的左或右子树i
tDeleteChildSqBiTreeTpositio
pi
tLR
fi
tii
tk1队列不空的标志SqQueueqI
itQueueq初始化队列,用于存放待删除的结点ii
tpow2plevel1porder2将层、本层序号转为矩阵的序号ifTiNil此结点空retur
0ii21LR待删除子树的根结点在矩阵中的序号whilekifT2i1Nil左结点不空E
Queueq2i1入队左结点的序号ifT2i2Nil右结点不空E
Queueq2i2入队右结点的序号TiNil删除此结点kDeQueueqi队列不空retur
1i
tVisitFu
cTElemType函数变量voidPreTraverseSqBiTreeTi
tePreOrderTraverse调用VisitFu
cTe先调用函数VisitFu
c处理根ifT2e1Nil左子树不空PreTraverseT2e1然后处理左子树ifT2e2Nil右子树不空PreTraverseT2e2先序遍历T对每个结点调用函数Visit一次且仅一次。i
tPreOrderTraverseSqBiTreeTi
tVisitTElemTypeVisitFu
cVisitifBiTreeEmptyT树不空PreTraverseT0pri
tf
好听全球资料 返回顶部