筆試程序題專項----二叉樹第k層的葉子節點數量

//判斷一個二叉樹第 k層 有多少個葉節點 
int leafAtLevelK(BTree T, int k, int cur)
{
	if(T==NULL||cur>k) return 0;
	if(cur==k)
	{
		if(T->lchild==NULL&&T->rchild==NULL) return 1;
		else return 0;
	}
	else if(cur<k)
	{
		return leafAtLevelK(T->lchild,k,cur+1)
		+leafAtLevelK( T->rchild, k,  cur+1);
	}
}

調用:

cout<<leafAtLevelK(T1,3,1)<<endl;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章