From 3899a8528470f40479d534a9e054260eeefd859c Mon Sep 17 00:00:00 2001 From: Arthur Date: Sun, 5 Sep 2021 09:02:00 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=20=E4=BA=8C=E5=8F=89?= =?UTF-8?q?=E6=A0=91=E7=9A=84=E9=80=92=E5=BD=92=E9=81=8D=E5=8E=86.md=20C?= =?UTF-8?q?=E8=AF=AD=E8=A8=80=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- problems/二叉树的递归遍历.md | 48 ++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) diff --git a/problems/二叉树的递归遍历.md b/problems/二叉树的递归遍历.md index 223cf722..93f4000e 100644 --- a/problems/二叉树的递归遍历.md +++ b/problems/二叉树的递归遍历.md @@ -360,8 +360,56 @@ var postorderTraversal = function(root) { }; ``` +C: +```c +//前序遍历: +void preOrderTraversal(struct TreeNode* root, int* ret, int* returnSize) { + if(root == NULL) + return; + ret[(*returnSize)++] = root->val; + preOrderTraverse(root->left, ret, returnSize); + preOrderTraverse(root->right, ret, returnSize); +} +int* preorderTraversal(struct TreeNode* root, int* returnSize){ + int* ret = (int*)malloc(sizeof(int) * 100); + *returnSize = 0; + preOrderTraversal(root, ret, returnSize); + return ret; +} +//中序遍历: +void inOrder(struct TreeNode* node, int* ret, int* returnSize) { + if(!node) + return; + inOrder(node->left, ret, returnSize); + ret[(*returnSize)++] = node->val; + inOrder(node->right, ret, returnSize); +} + +int* inorderTraversal(struct TreeNode* root, int* returnSize){ + int* ret = (int*)malloc(sizeof(int) * 100); + *returnSize = 0; + inOrder(root, ret, returnSize); + return ret; +} + +//后序遍历: +void postOrder(struct TreeNode* node, int* ret, int* returnSize) { + if(node == NULL) + return; + postOrder(node->left, ret, returnSize); + postOrder(node->right, ret, returnSize); + ret[(*returnSize)++] = node->val; +} + +int* postorderTraversal(struct TreeNode* root, int* returnSize){ + int* ret= (int*)malloc(sizeof(int) * 100); + *returnSize = 0; + postOrder(root, ret, returnSize); + return ret; +} +``` ----------------------- * 作者微信:[程序员Carl](https://mp.weixin.qq.com/s/b66DFkOp8OOxdZC_xLZxfw)