2018年南京工业大学828数据结构第十七题
程序员文章站
2022-05-23 09:58:35
...
#include <iostream>
#include <queue>
using namespace std;
typedef struct node
{
int data;
node *left;
node *right;
} * BTREE;
int leftNum(BTREE root)
{
queue<BTREE> q;
int cnt = 0;
while (!q.empty())
{
int size = q.size();
for (int i = 0; i < size; i++)
{
BTREE tmp = q.front();
q.pop();
if (tmp->left == nullptr && tmp->right == nullptr)
{
cnt = cnt + 1;
}
if (tmp->left != nullptr)
{
q.push(tmp->left);
}
if (tmp->right != nullptr)
{
q.push(tmp->right);
}
}
}
return cnt;
}
int main()
{
BTREE root = (BTREE)malloc(sizeof(node));
int cnt = leftNum(root);
cout << cnt << endl;
return 0;
}
上一篇: varchar2(100 char)意思
下一篇: 第六章