给你一棵二叉树的根节点 root ,返回其节点值的 后序遍历 。
c语言解法
- void postorder(struct TreeNode *root, int *res, int *resSize) {
- if (root == NULL) {
- return;
- }
- postorder(root->left, res, resSize);
- postorder(root->right, res, resSize);
- res[(*resSize)++] = root->val;
- }
-
- int *postorderTraversal(struct TreeNode *root, int *returnSize) {
- int *res = malloc(sizeof(int) * 2001);
- *returnSize = 0;
- postorder(root, res, returnSize);
- return res;
- }
本题要求二叉树的后序遍历,与上题相同,可以使用递归的方法,先输出左子树,后输出右子树,最后输出根节点即可
本题考察二叉树的后序遍历,利用递归,LRD的顺序输出即可