长沙好的网站建设品牌,seo自学网官网,织梦网站后台进不去,wordpress怎么备份数据库结构目录 1.解题思路2.代码实现2.1获得节点数接口:2.2递归接口:2.3最终实现 1.解题思路
该题要利用前序遍历#xff0c;将树的值存到数组中#xff0c;所以在申请空间的时候#xff0c;我们需要知道要申请多少空间#xff0c;也就是要知道树到底有多少个结点#xff0c;因此第… 目录 1.解题思路2.代码实现2.1获得节点数接口:2.2递归接口:2.3最终实现 1.解题思路
该题要利用前序遍历将树的值存到数组中所以在申请空间的时候我们需要知道要申请多少空间也就是要知道树到底有多少个结点因此第一步要写个函数实现获得树的节点数又因为该题提供的接口里写了申请空间因为本题自带的接口不适合递归所以我们可以将递归操作再另外写个函数来实现.
2.代码实现
2.1获得节点数接口: int TreeNums(struct TreeNode* root)
{if(rootNULL)return 0;return TreeNums(root-left)TreeNums(root-right)1;}2.2递归接口: void Prev(struct TreeNode* root,int *a,int *i)
{if(rootNULL)return ;a[(*i)]root-val;Prev(root-left,a,i);Prev(root-right,a,i);
}
2.3最终实现 int TreeNums(struct TreeNode* root)
{if(rootNULL)return 0;return TreeNums(root-left)TreeNums(root-right)1;}void Prev(struct TreeNode* root,int *a,int *i)
{if(rootNULL)return ;a[(*i)]root-val;Prev(root-left,a,i);Prev(root-right,a,i);
}int* preorderTraversal(struct TreeNode* root, int* returnSize)
{int sizeTreeNums(root);int *a(int*)malloc(sizeof(int)*size);int pi0;Prev(root,a,pi);*returnSizesize;return a;
}
结尾今天的分享到此结束喜欢的朋友如果感觉有帮助可以点赞三连支持咱们共同进步!