更新时间:2022-10-04 17:28:42
1 void PrintNodeAtLevel(BiTree T,int level) 2 { 3 // 空树或层级不合理 4 if (NULL == T || level < 1 ) 5 return; 6 7 if (1 == level) 8 { 9 cout << T->data << " "; 10 return; 11 } 12 13 // 左子树的 level - 1 级 14 PrintNodeAtLevel(T->leftChild, level - 1); 15 16 // 右子树的 level - 1 级 17 PrintNodeAtLevel(T->rightChild, level - 1); 18 } 19 20 21 void LevelTraverse(BiTree T) 22 { 23 if (NULL == T) 24 return; 25 26 int depth = Depth(T); 27 28 int i; 29 for (i = 1; i <= depth; i++) 30 { 31 PrintNodeAtLevel(T, i); 32 cout << endl; 33 } 34 }